Monolog - Łuk 4795 12

O temacie

Autor Axel

Zaczęty 19.09.2009 roku

Wyświetleń 4795

Odpowiedzi 12

Axel

Axel

Użytkownicy
Król Mount & Blade
posty244
Propsy2
  • Użytkownicy
  • Król Mount & Blade

Axel

Monolog - Łuk
2009-09-19, 18:29(Ostatnia zmiana: 2009-09-19, 18:31)
Witam,
Od jakiegoś czasu próbuje stworzyć monolog do gothic 1 do kowadła , ale totalnie nie mam pojęcia jak to zrobić. Według innych monologów i tutku stworzyłem taki skrypt:
[codebox]
INSTANCE PC_applebogen (c_Info)
{
    npc    = PC_Hero;
    condition  = PC_applebogen_Condition;
    information  = PC_applebogen_Info;
    important  = 0;
    permanent  = 1;
    description  = "Stwórz łuk";
};
func int PC_applebogen_Condition()
{
return TRUE;
};
func VOID PC_applebogen_Info()
{
if (Npc_HasItems(other,ItfoApple) = 2 () //( Z tą linią jest problem )
}
{
   CreateInvItems        (hero,Apple_Bogen ,  2);


}
else
{
 Print("Zdobądź jabłka ");
};

[/codebox]

Jak włącze gothic startera i dam Reparse scripts to pojawia się błąd:
[codebox]U:PAR Assignment : Left operand is not a lvalue (line 26)[/codebox]
Dziękuje za wszelką pomoc

Edit : Ten skrypt wrzuciłem do : _Work/Data/Scripts/Content/Story/Events
 
Mount & Blade i Dofus wymiatają :D

Jeżeli ktoś gra w Dofusa niech napisze do mnie na pw !



Wie is ezel? Ik.

Item editor - M&B

gothI

gothI

Użytkownicy
posty167
  • Użytkownicy
w tej linijce z if co to "()" jest?
 
GG:10938162

Axel

Axel

Użytkownicy
Król Mount & Blade
posty244
Propsy2
  • Użytkownicy
  • Król Mount & Blade
Część skryptu , w innych też coś takiego widziałem.
 
Mount & Blade i Dofus wymiatają :D

Jeżeli ktoś gra w Dofusa niech napisze do mnie na pw !



Wie is ezel? Ik.

Item editor - M&B

Tasilvar

Tasilvar

Użytkownicy
zwykły user
posty264
Propsy17
ProfesjaSkrypter
  • Użytkownicy
  • zwykły user
if (Npc_HasItems(other,ItfoApple) = 2 () // [b]([/b] też wywal jak mówił gothI
[b]}[/b]/// to  wywal bo niby do czego to ma być?
{
CreateInvItems (hero,Apple_Bogen ,  2);


}
 

Axel

Axel

Użytkownicy
Król Mount & Blade
posty244
Propsy2
  • Użytkownicy
  • Król Mount & Blade
[codebox]INSTANCE PC_applebogen (c_Info)
{
    npc    = PC_Hero;
    condition  = PC_applebogen_Condition;
    information  = PC_applebogen_Info;
    important  = 0;
    permanent  = 1;
    description  = "Stwórz łuk";
};
func int PC_applebogen_Condition()
{
return TRUE;
};
func VOID PC_applebogen_Info()
{
if (Npc_HasItems(other,ItfoApple) = 2 )
{
   CreateInvItems        (hero,Apple_Bogen ,  2);


}
else
{
 Print("Zdobądź jabłka ");
};

[/codebox]

Zrobiłem tak jak powiedziałeś i dalej ten sam błąd.
 
Mount & Blade i Dofus wymiatają :D

Jeżeli ktoś gra w Dofusa niech napisze do mnie na pw !



Wie is ezel? Ik.

Item editor - M&B

Jason525PL

Jason525PL

Użytkownicy
posty116
Propsy6
  • Użytkownicy
A do constans.d nie trzeba niczego dodać??
 

Tasilvar

Tasilvar

Użytkownicy
zwykły user
posty264
Propsy17
ProfesjaSkrypter
  • Użytkownicy
  • zwykły user

Tasilvar

Monolog - Łuk
#6 2009-09-19, 19:12(Ostatnia zmiana: 2009-09-19, 19:16)
Ten sam błąd przy if?

Dodam jeszcze że powinieneś zamknąć funkcję dając na koniec jeszcze

};
Print("Zdobądź jabłka ");
rozumiem że chciałeś uzykać napis na ekranie?

daj tak:

PrintScreen ("Text", -1,-1,"FONT_OLD_20_WHITE.TGA",czas_wyświetlania_textu);
 

Axel

Axel

Użytkownicy
Król Mount & Blade
posty244
Propsy2
  • Użytkownicy
  • Król Mount & Blade

Axel

Monolog - Łuk
#7 2009-09-19, 19:17(Ostatnia zmiana: 2009-09-19, 19:25)
@2up
Nic w tutku nie pisało ..
@up
Tak , dalej to samo nawet jak dodałem te ";"

Edit : Zmieniłem ten tekst z "zdobądź jabłko" I dalej to samo
 
Mount & Blade i Dofus wymiatają :D

Jeżeli ktoś gra w Dofusa niech napisze do mnie na pw !



Wie is ezel? Ik.

Item editor - M&B

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Błąd jest dość prosty. W skrypcie masz:
if (Npc_HasItems(other,ItfoApple) = 2 )co oznacza mniej więcej, że jeśli Npc ma jabłko, to zrób dwa :P  Fajnie, ale bezsensu :o  Pojedynczy znak "=" oznacza przypisz, natomiast "==" oznacza równa się. Zatem:
if (Npc_HasItems(other,ItfoApple) == 2 )

Axel

Axel

Użytkownicy
Król Mount & Blade
posty244
Propsy2
  • Użytkownicy
  • Król Mount & Blade
Chwała Adanosowi, już nie ma tego błędu... ale pojawił się nowy  :o  
Chodzi o to że w czasie reparsowania skryptów pojawia mi się błąd
U:PAR Unkown identifiner ELSE (line 32)
Oto fragment skryptu:
[codebox]
INSTANCE PC_applebogen (c_Info)
{
    npc    = PC_Hero;
    condition  = PC_applebogen_Condition;
    information  = PC_applebogen_Info;
    important  = 0;
    permanent  = 1;
    description  = "Stwórz łuk";
};
func int PC_applebogen_Condition()
{
return TRUE;
};
func VOID PC_applebogen_Info()
{
if (Npc_HasItems(other,ItfoApple) == 2 )
{
   CreateInvItems        (hero,Apple_Bogen ,  1);


};
else if (Npc_HasItems(other,ItfoApple) <= 2 ) \\ To jest problem
{
PrintScreen    ("Zdobącz jabłka", -1,-1,"FONT_OLD_20_WHITE.TGA",15);
};
[/codebox]

Rozumiem typ że "Nierozpoznano identyfikatora" ale wkońcu "Else" To chyba jest poprawny?
 
Mount & Blade i Dofus wymiatają :D

Jeżeli ktoś gra w Dofusa niech napisze do mnie na pw !



Wie is ezel? Ik.

Item editor - M&B

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Przed else dałeś średnik. Wywal go.

gafciozielarz

gafciozielarz

Użytkownicy
posty9
  • Użytkownicy

gafciozielarz

Monolog - Łuk
#11 2009-12-28, 13:00(Ostatnia zmiana: 2009-12-28, 13:01)
Też czasem miałem ten błąd.
Nie wiem o co chodzi z tym else.
 

maciejG

maciejG

Użytkownicy
posty450
Propsy1
  • Użytkownicy

maciejG

Monolog - Łuk
#12 2009-12-28, 13:23(Ostatnia zmiana: 2009-12-28, 13:23)
}; //- ten średnik oznacza zakończenie instrukcji warunkowej, dlatego potem nie może być else
else if (Npc_HasItems(other,ItfoApple) <= 2 )
{
 
Spoiler


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