Współrzędne zamiast waypoint'a 5674 33

O temacie

Autor Toworish

Zaczęty 28.12.2015 roku

Wyświetleń 5674

Odpowiedzi 33

Toworish

Toworish

Użytkownicy
http://chomikuj.pl/ToWoRiSh
posty1664
Propsy254
ProfesjaNierób
  • Użytkownicy
  • http://chomikuj.pl/ToWoRiSh
Siema tak wiem że Waypoint to inaczej współrzędne, ale chodziłoby mi raczej o coś takiego jak możliwość ustalania NPC miejsca respawnu oraz rutyny, wskazując mu nie waypoint a współrzędne X,Y,Z które możemy odczytać wpisując marvin klikając alt+p

Cóż nie pytajcie po co mi to, bo po prostu zwyczajnie jest mi to potrzebne, najbardziej chyba z ciekawości, wiem że waypointy są potrzebne bo tworzą waynet po którym poruszają się npc, ale potrzebuje wstawić do gry npc dając mu zwyczajne współrzędne.
 
Niebawem...Pierdolnę se poradniki do Goticzka. Albo i nie, bo sie mnie nie chce.


Toworish

Toworish

Użytkownicy
http://chomikuj.pl/ToWoRiSh
posty1664
Propsy254
ProfesjaNierób
  • Użytkownicy
  • http://chomikuj.pl/ToWoRiSh
Nie wypali, bawię się z tym nowym multi ;p GO i postanowiłem spróbować z poziomu dedalusa wrzucić tam npc, takie tam moje kombinacje z nudów xd tam nie czyta waypointów dlatego też chciałbym z poziomu dedalusa znaleźć możliwość wrzucenia npc na współrzędne XYZ

Edit: chociaż właściwie to mogłoby wypalić, ale zaś ikarusa kurwa nie ogarniam  :lol2:
 
Niebawem...Pierdolnę se poradniki do Goticzka. Albo i nie, bo sie mnie nie chce.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Edit: chociaż właściwie to mogłoby wypalić, ale zaś ikarusa kurwa nie ogarniam  :lol2:

To ogarnij.  :F
Mnie to zajęło... No jak miałem chęci żeby coś spróbować to tylko 15 minut. :lol2: ... Albo i mniej :F

Polecam zacząć od callów. Ja tak zacząłem i było spoko. Chyba, że nie ogarniasz zFLOAT / zVALUE / zREAL (to to samo wszystko) to polecam zacząć od tego, potem calle.
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.


Toworish

Toworish

Użytkownicy
http://chomikuj.pl/ToWoRiSh
posty1664
Propsy254
ProfesjaNierób
  • Użytkownicy
  • http://chomikuj.pl/ToWoRiSh
Edit: chociaż właściwie to mogłoby wypalić, ale zaś ikarusa kurwa nie ogarniam  :lol2:

To ogarnij.  :F
Mnie to zajęło... No jak miałem chęci żeby coś spróbować to tylko 15 minut. :lol2: ... Albo i mniej :F

Polecam zacząć od callów. Ja tak zacząłem i było spoko. Chyba, że nie ogarniasz zFLOAT / zVALUE / zREAL (to to samo wszystko) to polecam zacząć od tego, potem calle.
Nie oszukujmy się, gdy przeczytałem ikarus, miałem nadzieję że Splash bądź właśnie ty niczym anioły wrzucą tutaj gotowy skrypt, dodając przy tym kulturalne "Masz ofiaro losu, to prostrze niż tłumaczenie"
2x Nie oszukujmy się, nie znam niemieckiego, ani nawet podstaw c++ w dedalusie też wszystkiego nie napisze, a zazwyczaj jak coś napisze i działa to i tak nie rozumiałem co pisze ^^ musiałbym mieć na prawde wolny czas i chęć nauki, tylko że jest jedno ale, takim jestem człekiem że uczę się coś robiąc mając jakiś przykład, np w dedalusie jak czegoś nie umiem to najpierw szukam na forum i w googlach które mnie tu przysyłają, porównuje różne funkcje które kiedyś ktos tu wrzucił i staram się zlepić cos na podobnym przykładzie xd
 
Niebawem...Pierdolnę se poradniki do Goticzka. Albo i nie, bo sie mnie nie chce.

Splash

Splash

Moderator
posty4207
Propsy3403
ProfesjaNierób
  • Moderator
Przerobiłem na szybko funkcję umieszczania przedmiotu, ale nie obiecuję, że będzie działać :F
func void MEM_InsertNpc (var c_npc inst, var int fX, var int fY, var int fZ) {
    var zCWaynet wayNet; wayNet = MEM_PtrToInst(MEM_World.wayNet);
    var zCWaypoint wp; wp = MEM_PtrToInst(MEM_ReadInt(wayNet.wplist_next+4));
    var int x; x = wp.pos[0];
    var int y; y = wp.pos[1];
    var int z; z = wp.pos[2];
    wp.pos[0] = fX;
    wp.pos[1] = fY;
    wp.pos[2] = fZ;
    Wld_InsertNpc (Hlp_GetInstanceID(inst), wp.name);
    wp.pos[0] = x;
    wp.pos[1] = y;
    wp.pos[2] = z;
}
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...
Ps. Siemekk ma downa i śpi w pufie

Toworish

Toworish

Użytkownicy
http://chomikuj.pl/ToWoRiSh
posty1664
Propsy254
ProfesjaNierób
  • Użytkownicy
  • http://chomikuj.pl/ToWoRiSh
Czytam dziesiąty raz i ni chuja nie czaje w którym momencie on tworzy waypoint xd

wp.pos zamiast [0] [1] [2] mam wpisać dokładne cyfry współrzędnych?

i czy wp.name to bez różnicy jaką nazwę dam, bo nie rozkminiam o jakiej nazwie on tworzy waypoint?
 
Niebawem...Pierdolnę se poradniki do Goticzka. Albo i nie, bo sie mnie nie chce.

Splash

Splash

Moderator
posty4207
Propsy3403
ProfesjaNierób
  • Moderator

Splash
Moderator

Współrzędne zamiast waypoint'a
#8 2015-12-28, 17:01(Ostatnia zmiana: 2015-12-28, 17:07)
:| Po prostu wywołujesz tą funkcję.
MEM_InsertNpc (InstancjaNPC, mkf (pozycja X), mkf (pozycja Y), mkf (pozycja Z))
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...
Ps. Siemekk ma downa i śpi w pufie

Toworish

Toworish

Użytkownicy
http://chomikuj.pl/ToWoRiSh
posty1664
Propsy254
ProfesjaNierób
  • Użytkownicy
  • http://chomikuj.pl/ToWoRiSh
Aa nie wyczaiłem xd doprowadź mnie jeszcze za rączkę mam nadzieje że do sedna sprawy, wystarczy to wczytać w FF?
 
Niebawem...Pierdolnę se poradniki do Goticzka. Albo i nie, bo sie mnie nie chce.

Splash

Splash

Moderator
posty4207
Propsy3403
ProfesjaNierób
  • Moderator
Rozumiem, że chcesz, by co każdą klatkę pojawiał się npc w tym miejscu i po kilku sekundach ma ich tam być ponad 100? :lol:
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...
Ps. Siemekk ma downa i śpi w pufie

Toworish

Toworish

Użytkownicy
http://chomikuj.pl/ToWoRiSh
posty1664
Propsy254
ProfesjaNierób
  • Użytkownicy
  • http://chomikuj.pl/ToWoRiSh
Wróć nienienie

Ale w tej chwili wszystko mi się pomieszało, chcąc zrobić to za pomocą amuletu na on_equip robiłem to mniej więcej tak
FUNC VOID Equip_ItAm_Prot_Fire_011()   {   
      Wld_InsertNpc      (NONE_100_Xardas,    "NW_XARDAS_START");
   };
A ni cholery nie kojaże żebym kiedyś w podobny sposób wywoływał całą funkcję


Aaaa zwyczajnie w skrypcie amuletu, zamiast:
on_equip      =   Equip_ItAm_Prot_Fire_011;
mam wklepać on_equip      =      MEM_InsertNpc
i niżej skrypt funkcji co nie? i pewnie niepotrzebnie robie zamieszanie xd
 
Niebawem...Pierdolnę se poradniki do Goticzka. Albo i nie, bo sie mnie nie chce.

Splash

Splash

Moderator
posty4207
Propsy3403
ProfesjaNierób
  • Moderator
FUNC VOID Equip_ItAm_Prot_Fire_011()
{   
      MEM_InsertNpc (InstancjaNPC, mkf (pozycja X), mkf (pozycja Y), mkf (pozycja Z));
};
Może teraz coś łapiesz? :ayfkm:
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...
Ps. Siemekk ma downa i śpi w pufie

Toworish

Toworish

Użytkownicy
http://chomikuj.pl/ToWoRiSh
posty1664
Propsy254
ProfesjaNierób
  • Użytkownicy
  • http://chomikuj.pl/ToWoRiSh
Więc w ten sposób, xd a ja kombinuje tym sposobem co napisałem wyżej i nie rozkminiam skąd te błędy, zaraz sprawdzę i napiszę czego znów nie umiem

Edit: @Splash piszesz tak:FUNC VOID Equip_ItAm_Prot_Fire_011()
{   
      MEM_InsertNpc (InstancjaNPC, mkf (pozycja X), mkf (pozycja Y), mkf (pozycja Z));
};
ale to tylko przykład? bo stworzyłem nowy plik czyta go przed skryptem z amuletem wygląda tak:
func void MEM_InsertNpc (var c_npc xardas, var int fX(31800), var int fY(4440), var int fZ(-17500)) {
Xardas = Hlp_GetNpc (NONE_100_Xardas);
    var zCWaynet wayNet; wayNet = MEM_PtrToInst(MEM_World.wayNet);
    var zCWaypoint wp; wp = MEM_PtrToInst(MEM_ReadInt(wayNet.wplist_next+4));
    var int x; x = wp.pos[0];
    var int y; y = wp.pos[1];
    var int z; z = wp.pos[2];
    wp.pos[0] = fX;
    wp.pos[1] = fY;
    wp.pos[2] = fZ;
    Wld_InsertNpc (Hlp_GetInstanceID(inst), wp.name);
    wp.pos[0] = x;
    wp.pos[1] = y;
    wp.pos[2] = z;
};
A w amulecie dałem tak:FUNC VOID Sharingan_on()// na to nie patrz poprostu edytuje stary amulet blblblbla
{
//MEM_InsertNpc (InstancjaNPC, mkf (pozycja X), mkf (pozycja Y), mkf (pozycja Z));
MEM_InsertNpc (var c_npc xardas, var int fX(31800), var int fY(4440), var int fZ(-17500))
};
no i wyskakuje mi że brak mu jakiegoś nawiasu w func void MEM_InsertNpc (var c_npc xardas, var int fX(31800), var int fY(4440), var int fZ(-17500))
EEEDIT: W chwili w której straciłeś do mnie nerwy, muszę napisać że chyba załapałem jak to napisać, przeskanowałem temat od nowa i zauważyłem swoje błędy, aktualnie mam tylko drobne błędy, które ponaprawiam i zobaczymy

Post połączony: 2015-12-28, 18:43
@Splash
Dobra w obecnej sytuacji skrypty wyglądają tak:
func void MEM_InsertNpc (var c_npc inst, var int fX, var int fY, var int fZ)   {
    var zCWaynet wayNet; wayNet = MEM_PtrToInst(MEM_World.wayNet);
    var zCWaypoint wp; wp = MEM_PtrToInst(MEM_ReadInt(wayNet.wplist_next+4));
    var int x; x = wp.pos[0];
    var int y; y = wp.pos[1];
    var int z; z = wp.pos[2];
    wp.pos[0] = fX;
    wp.pos[1] = fY;
    wp.pos[2] = fZ;
    Wld_InsertNpc (Hlp_GetInstanceID(inst), wp.name);
    wp.pos[0] = x;
    wp.pos[1] = y;
    wp.pos[2] = z;
};
i amulet:
FUNC VOID Sharingan_on()// na to nie patrz poprostu edytuje stary amulet blblblbla   {
    MEM_InsertNpc (xardas, mkf(31800), mkf(4440), mkf(-17500));
   };
w NPC_Globals.d mam że xardas to inaczej None_100_Xardas

po użyciu amuletu wyłącza mi gothica nie mówiąc o żadnym błędzie, nawet acces'a niema
 
Niebawem...Pierdolnę se poradniki do Goticzka. Albo i nie, bo sie mnie nie chce.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Nowy folder, przed itemami i dajesz tam to:

func void MEM_InsertNpc (var c_npc inst, var int fX, var int fY, var int fZ) {
    var zCWaynet wayNet; wayNet = MEM_PtrToInst(MEM_World.wayNet);
    var zCWaypoint wp; wp = MEM_PtrToInst(MEM_ReadInt(wayNet.wplist_next+4));
    var int x; x = wp.pos[0];
    var int y; y = wp.pos[1];
    var int z; z = wp.pos[2];
    wp.pos[0] = fX;
    wp.pos[1] = fY;
    wp.pos[2] = fZ;
    Wld_InsertNpc (Hlp_GetInstanceID(inst), wp.name);
    wp.pos[0] = x;
    wp.pos[1] = y;
    wp.pos[2] = z;
};

w itemie on_Equip:

MEM_InsertNpc (InstanceNpc, mkf(PozycjaX), mkf(PozycjaY), mkf(PozycjaZ));

FUNC VOID Equip_ItAm_Prot_Fire_011()
{   
      MEM_InsertNpc (InstancjaNPC, mkf (pozycja X), mkf (pozycja Y), mkf (pozycja Z));
};

Przykład:

FUNC VOID Equip_ItAm_Prot_Fire_011()
{   
      MEM_InsertNpc (Xardas, mkf (1999), mkf (1000), mkf (5937));
};
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Toworish

Toworish

Użytkownicy
http://chomikuj.pl/ToWoRiSh
posty1664
Propsy254
ProfesjaNierób
  • Użytkownicy
  • http://chomikuj.pl/ToWoRiSh
No to tak mam, i wyłącza mi gre przy próbie użycia amuletu
 
Niebawem...Pierdolnę se poradniki do Goticzka. Albo i nie, bo sie mnie nie chce.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
To znaczy, że skrypt jest zły 8)
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Toworish

Toworish

Użytkownicy
http://chomikuj.pl/ToWoRiSh
posty1664
Propsy254
ProfesjaNierób
  • Użytkownicy
  • http://chomikuj.pl/ToWoRiSh
Tak też pomyślałem, ale składnia tego skryptu jest dla mnie zbyt pogmatwana abym mógł próbować cokolwiek poprawić xd
 
Niebawem...Pierdolnę se poradniki do Goticzka. Albo i nie, bo sie mnie nie chce.

inż. Avallach

inż. Avallach

Administrator
posty7662
Propsy5238
NagrodyV
ProfesjaProgramista
  • Administrator
Przerobiłem na szybko funkcję umieszczania przedmiotu, ale nie obiecuję, że będzie działać :F
func void MEM_InsertNpc (var c_npc inst, var int fX, var int fY, var int fZ) {
    var zCWaynet wayNet; wayNet = MEM_PtrToInst(MEM_World.wayNet);
    var zCWaypoint wp; wp = MEM_PtrToInst(MEM_ReadInt(wayNet.wplist_next+4));
    var int x; x = wp.pos[0];
    var int y; y = wp.pos[1];
    var int z; z = wp.pos[2];
    wp.pos[0] = fX;
    wp.pos[1] = fY;
    wp.pos[2] = fZ;
    Wld_InsertNpc (Hlp_GetInstanceID(inst), wp.name);
    wp.pos[0] = x;
    wp.pos[1] = y;
    wp.pos[2] = z;
}
W sumie sprytne, po co tworzyć waypoint jak można na moment przerobić istniejący :D
Pamiętaj jednak że zakładasz tutaj że Wld_InsertNpc działa natychmiastowo. A nie byłoby nic dziwnego gdyby faktyczne pojawienie się npc w świecie działo się z opóźnieniem, kiedy waypoint ma już przywróconą pozycję (tak dzieje się z rutynami i komendami AI). No, ale zgaduję że tego akurat nie zrobiono, jeśli działa z itemami to z npc też powinno.

Splash

Splash

Moderator
posty4207
Propsy3403
ProfesjaNierób
  • Moderator
Toworish, czy funkcja jest wywoływana w świecie, w którym są waypointy?
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...
Ps. Siemekk ma downa i śpi w pufie


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry