Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - HerrKlebstoff

Strony: [1] 2 3 ... 11
1
Pytania i problemy / Gothic się nie włącza!
« dnia: 2013-01-07, 19:04 »
Taa, witamy nowego.
Już przymknę oko na zjedzone znaki interpunkcyjne oraz drobny błąd ortograficzny.
Najpierw mógłbyś z łaski swojej podać jakieś szczegóły...? Tu znajdziesz modderów, ale nie jasnowidzów. ;-)
I spokojnie, człowieku. :D

2
Offtopic / 2012 - Podsumowanie
« dnia: 2013-01-07, 18:58 »
Cytuj
-zdam na "4" z niemieckiego

Tu nie ma się czym chwalić.  :mellow:  
Widzisz mój drogi... Dla jednego coś jest normą, a dla drugiego świętem, a że nie lubię tego języka, ciężko mi się go uczy i mam głupią nauczycielkę, więc to już dla mnie osiągnięcie, a dla kogoś norma. Osobiście nie jestem za zbieraniem cyfr, ale zawsze to 100zł może wlecieć do portfela

Może ujmę to w inny sposób. 4 to bardzo dużo.
Nie ucz się tego języka. Udawaj, że się go uczysz. Ja tak robiłem i nie żałuję. No, przynajmniej dziadek nie marudził.

3
Offtopic / 2012 - Podsumowanie
« dnia: 2013-01-01, 13:27 »
Cytuj
-zdam na "4" z niemieckiego

Tu nie ma się czym chwalić.  :mellow:  

Cytuj
- ograniczyłem picie i palenie.

No, chłopie - coś się z Tobą złego dzieje. :D


Emm... Plany na 2013, mawiacie...

-Przeżyć

4
Pytania i problemy / Blender, Wings3D czy inne?
« dnia: 2012-12-31, 19:36 »
Tak, jestem pewien.
Ściągnąłem to jeszcze przed wakacjami i zapodali od razu kod...
Poza tym już to było kiedys omawiane na forum.

5
Pytania i problemy / Blender, Wings3D czy inne?
« dnia: 2012-12-31, 18:55 »
Niee, ja nie podawałem i mi nikt na chatę nie wbijał. :P

6
Pytania i problemy / Blender, Wings3D czy inne?
« dnia: 2012-12-31, 18:41 »
Nie polecam Wingsa do robienia jakichś większych światów. Wings lubi się ścinać powyżej 100.000 poly, a 400.000 to crash.
A kolei 3DS maxa można mieć nie płacąc.

http://students.autodesk.com/

Zarejestruj się tutaj i ściągnij dowolną wersję 3DS maxa z licencją za darmo. :-]

7
Skrypty / Funkcja usuwająca przedmioty
« dnia: 2012-09-10, 15:59 »
@up
I właśnie napisałem to co chciał. :facepalm:  Npc_RemoveInvItems, gdzie wpisuje się określoną ilość...

8
Skrypty / Funkcja usuwająca przedmioty
« dnia: 2012-09-02, 22:06 »
Npc_RemoveInvItems.

9
Pytania i problemy / 7 problemów
« dnia: 2012-09-01, 23:13 »
Cytuj
Gorzej, nie ikarusem a hookengine

Ok, to może zostawmy ten hełm w spokoju :D

Cytuj
możesz np. zrobić każdego potwora jako osobny instance i sprawdzać czy są martwi,

Może znajdzie się murzyn, który napisałby mi 4257 skryptów ścierwojadów :D

Cytuj
A nowe dialogi dodane do paczki z modem?

Nie robiłem nowej paczki z modem, ale nowy plik ini, z którego odpalam grę i tylko z niego chodzą jakiekolwiek dialogi.

Cytuj
To dlaczego paladyn z lagą potrafi Ci nieźle dupę złoić?

Bo ma skilla. Poza tym to wszystko dotyczy G1 ;-]


Właśnie wpadłem na pomysł zablokowania możliwości zakładania tysięcy hełmów naraz. Sawik, kojarzysz może komendę na zdjęcie danego przedmiotu?

10
Pytania i problemy / 7 problemów
« dnia: 2012-09-01, 13:00 »
Polaking, teraz to Ty pierdolisz i nie na temat - istnieje takie coś jak PW. :D  

Cytuj
zmieniasz wartość którą posiadają wszystkie słoiki, czyli jeżeli mam otwarty o wartości 2 i zamknięty, oba mają wartość dwa, nie wiesz o czym mówię?

Nie, zamknięty zawsze ma wartość 100, zmienna jest wpisana tylko do otwartego. ;-)

Cytuj
a co jeżeli sprzedam, lub wywalę z ekwipunku?

Tu masz rację - jeśli naprawie ten skrypt, postaram się to poprawić.:-)

Cytuj
Jest, oCNpc__PutInSlot i jedziesz. W gothic dwa jest pod adresem 7642288.
Potem używasz oCNpc__RemoveFromSlot z adresu 7643760.

Śmierdzi mi to ikarusem, zgadłem? :D

Cytuj
Gdzie to sprawdzasz? Powinno działać na zasadzie mieczy runicznych.

I tu podejrzewam, że wrzuciłem to do złego pliku - tego samego co smary - ZS_ReactToDamage.d. Ten plik znajduje się w ZS_Human.

Cytuj
Zmiana metody respawnu.

A jest inna? Na forum znalazłem tylko to.

Cytuj
Jest to wprowadzone w oryginalnym gothic, kilkukrotnie już formuła padała na forum.

Nie przypominam sobie tego w oryginalnym gothicu, na forum tez szukałem... No nic, poszperam jeszcze.

Cytuj
A co z Wld_SetGuildAttitude?

To mogłoby zadziałać... Spróbuję później, chwilowo niespecjalnie mam czas.

Cytuj
A dialogi zreparsowane? Polecam Redefixa.

Tak, dialogi skompilowane, dla pewności również spacerem.


Idzie props za staranie się :ok:

11
Pytania i problemy / 7 problemów
« dnia: 2012-08-31, 18:44 »
Polaking - jeśli ustawię Item_kat_armor, to npc nie mogą go założyć...

12
Pytania i problemy / 7 problemów
« dnia: 2012-08-31, 16:43 »
No niby tak, ale kiedy pobiję NPC, to mogę mu zabrać ten hełm.

13
Pytania i problemy / 7 problemów
« dnia: 2012-08-31, 15:29 »
Znalazło się kilka problemów z którymi nie daję sobie rady. Za 1 rozwiązany problem daję propsa. :ok:
Dobra, koniec pierdół.

1) Specjalna broń na daną gildię potwora - chciałem zrobić przykładowo łuk, który zadawałby 20 obrażeń więcej ścierwojadom. Chodzi mi o warunek. Jest takie coś jak:

if (self.guild == GIL_STT)
Jednak nie działa on na gildię stworków.

2) Hammerite. Tak, po przeczytaniu tego pomyśleliście zapewne "WTF?". Wpadłem na nieco dziwny pomysł zrobienia takiego dodatku do broni, który zwiększałby obrażenia i starczyłby na 50 uderzeń. Jest słoik otwarty i zamknięty.

INSTANCE ItMi_Smar_01 (C_Item)
{
name = "Smar do broni";

mainflag = ITEM_KAT_NONE;
flags = ITEM_MULTI;

value = 100;

visual = "Smar_01.3ds";
material = MAT_METAL;

description = name;
TEXT[0]             = "'Made in China'";
TEXT[1]             = "Bonus do obrażeń: 20";
TEXT[4] = NAME_Value; COUNT[4] = value;
};
INSTANCE ItMi_Smar_Otwarty_01 (C_Item)
{
name = "Smar do broni (otwarty)";

mainflag = ITEM_KAT_NONE;
flags = ITEM_MULTI;

value = Value_Smar_01;

visual = "Smar_Otwarty_01.3ds";
material = MAT_METAL;

description = name;
TEXT[0]             = "'Made in China'";
TEXT[1]             = "Bonus do obrażeń: 20";
TEXT[4] = NAME_Value; COUNT[4] = value;
};

Value_smar_01 to zmienna, ustaliłem jej wartość w startupie. Następnie w ReactToDamage.d (Ave Avallach :D  )


 if (Npc_HasItems (hero, ItMi_Smar_01) >=1)
 && (!Npc_HasItems (hero, ItMi_Smar_otwarty_01) >=1) //Jeśli mam tylko zamknięty
    {
NPC_ChangeAttribute(self,ATR_HITPOINTS, - 20);
CreateInvItem (hero, ItMi_Smar_otwarty_01); //Otwieramy jeden ;-]
NPC_RemoveInvItem (hero, ItMi_Smar_01); //Czyli ten won
Value_Smar_01 = Value_Smar_01 - 2; //Zmienia się wartość po użyciu
if (Value_Smar_01 == 0) //Jeśli spadnie do 0 (zużyje się)
{
NPC_RemoveInvItem (hero, Itmi_Smar_otwarty_01); //Wywalamy...
Value_Smar_01 == 100; //I czas na kolejny
};
};
 if (Npc_HasItems (hero, ItMi_Smar_otwarty_01) >=1) //Jeśli mamy tylko otwarty... A co będę tłumaczyć. :-|
    {
NPC_ChangeAttribute(self,ATR_HITPOINTS, - 20);
Value_Smar_01 = Value_Smar_01 - 2;
if (Value_Smar_01 == 0)
{
NPC_RemoveInvItem (hero, Itmi_Smar_otwarty_01);
Value_Smar_01 == 100;
};
};

Błędów nie wywala, ale nie zadaje żadnych obrażeń. Tylko kiedy uderzam pierwszy raz, zmienia się wartość przedmiotu. Skończyły mi się pomysły na naprawienie tego skryptu...

3) Armie stworków. Coś czuję, że ten temat był poruszany już nieraz, jednak nie mogłem go znaleźć na forum. Skorzystałem z tej metody respawnu. Dodałem tam 6 stworków, jednak po północy przywołało ich tyle, że Goticzek nie wytrzymał...

4) Atrybut = obrażenia. Wpadłem na pomysł zrobienia szabli, która im więcej mamy zręczności, tym więcej zadawałaby obrażeń. Kombinowałem na różne sposoby. Zrobiłem najpierw zmienną "Obrazenia_01" i w startupie ustaliłem jej wartość:

Obrazenia_01 = self.attribute[ATR_DEXTERITY] / 2;
I zrobiłem skrypt broni...

INSTANCE Itmw_rapier_01(C_Item)
{
name = "Zdobiony rapier";  

mainflag = ITEM_KAT_NF;
flags = ITEM_SWD;
material = MAT_METAL;

value = 760;

damageTotal   = Obrazenia_01;
damagetype = DAM_EDGE;
range     =   130;

cond_atr[2]   = ATR_DEXTERITY;
cond_value[2]   = 20;
visual = "Rapier.3DS";

description = name;
TEXT[0]             = "Im więcej mam zręczności";
TEXT[1]             = "Tym większe zadaje obrażenia!";
TEXT[2] = NAME_Damage; COUNT[2] = damageTotal;
TEXT[3] = NAME_Dex_needed; COUNT[3] = cond_value[2];
TEXT[4] = NAME_OneHanded;
TEXT[5] = NAME_Value; COUNT[5] = value;
};

No i rzecz jasna lipa. Broń nie zadaje żądnych obrażeń...

5) Nastawienie stworków. Po tym jak opanowałem robienie zestawów, zrobiłem set druida. Po założeniu kilku przedmiotów z zestawu, nie atakowałyby gracza niektóre stworki. Oto skrypt jednego z przedmiotów:

INSTANCE Itmw_kostur_druid (C_Item)
{
name = "Kostur Druida";  

mainflag = ITEM_KAT_NF;
flags = ITEM_2HD_AXE;
material = MAT_METAL;

value = 1380;

damageTotal   = 105;
damagetype = DAM_MAGIC;
range     =   170;

cond_atr[2]   = ATR_MANA;
cond_value[2]   = 98;
visual = "Kostur_druid_01.3DS";
on_equip = Equip_kostur_1_druid;
on_unequip = UnEquip_kostur_1_druid;

description = name;
TEXT[1]             = "Set druida";
TEXT[2] = NAME_Damage; COUNT[2] = damageTotal;
TEXT[3] = NAME_Str_needed; COUNT[3] = cond_value[2];
TEXT[4] = NAME_TwoHanded;
TEXT[5] = NAME_Value; COUNT[5] = value;
};
FUNC VOID Equip_kostur_1_druid()
{
Set_druid = Set_druid + 1;
if (Set_druid == 2)
{
Npc_SetTrueGuild (scavenger,GIL_MEATBUG);
Npc_SetTrueGuild (yscavenger,GIL_MEATBUG);
PrintScreen ("Teraz mnie nie atakują ścierwojady!", -1,-1,"FONT_15_WHITE.TGA",2);
};
if (Set_druid == 3)
{
Npc_SetTrueGuild (molerat,GIL_MEATBUG);
Npc_SetTrueGuild (ymolerat,GIL_MEATBUG);
Npc_SetTrueGuild (bloodfly,GIL_MEATBUG);
PrintScreen ("Teraz mnie nie atakują kretoszczury i krwiopijcy!", -1,-1,"FONT_15_WHITE.TGA",2);
};
if (set_druid == 4)
{
Npc_SetTrueGuild (wolf,GIL_MEATBUG);
Npc_SetTrueGuild (greengobboclub,GIL_MEATBUG);
Npc_SetTrueGuild (greengobbosword,GIL_MEATBUG);
Npc_SetTrueGuild (blackgobbomace,GIL_MEATBUG);
Npc_SetTrueGuild (blackgobbowarrior,GIL_MEATBUG);
PrintScreen ("Teraz mnie nie atakują wilki i gobliny!", -1,-1,"FONT_15_WHITE.TGA",2);
};
if (set_druid == 5)
{
Npc_SetTrueGuild (lurker,GIL_MEATBUG);
Npc_SetTrueGuild (waran,GIL_MEATBUG);
Npc_SetTrueGuild (razor,GIL_MEATBUG);
Npc_SetTrueGuild (snapper,GIL_MEATBUG);
Npc_SetTrueGuild (shadowbeast,GIL_MEATBUG);
Npc_SetTrueGuild (troll,GIL_MEATBUG);
Npc_SetTrueGuild (youngtroll,GIL_MEATBUG);
PrintScreen ("Teraz mnie nie zaatakuje żadne zwierzę!", -1,-1,"FONT_15_WHITE.TGA",2);

};
};

FUNC VOID UnEquip_kostur_1_druid()
{
Set_druid = Set_druid - 1;
if (Set_druid == 1)
{
Npc_SetTrueGuild (scavenger,GIL_SCAVENGER);
Npc_SetTrueGuild (yscavenger,GIL_SCAVENGER);
};
if (Set_druid == 2)
{
Npc_SetTrueGuild (molerat,GIL_MOLERAT);
Npc_SetTrueGuild (ymolerat,GIL_MOLERAT);
Npc_SetTrueGuild (bloodfly,GIL_BLOODFLY);
};
if (set_druid == 3)
{
Npc_SetTrueGuild (wolf,GIL_WOLF);
Npc_SetTrueGuild (greengobboclub,GIL_GOBBO);
Npc_SetTrueGuild (greengobbosword,GIL_GOBBO);
Npc_SetTrueGuild (blackgobbomace,GIL_GOBBO);
Npc_SetTrueGuild (blackgobbowarrior,GIL_GOBBO);
};
if (set_druid == 4)
{
Npc_SetTrueGuild (lurker,GIL_LURKER);
Npc_SetTrueGuild (waran,GIL_WARAN);
Npc_SetTrueGuild (razor,GIL_SNAPPER);
Npc_SetTrueGuild (snapper,GIL_SNAPPER);
Npc_SetTrueGuild (shadowbeast,GIL_SHADOWBEAST);
Npc_SetTrueGuild (troll,GIL_TROLL);
Npc_SetTrueGuild (youngtroll,GIL_TROLL);
};
};

Nie miałem innego pomysłu niż zmiana gildii na chrząszcza. :D  Niestety, stworki nie zmieniają gildii i dalej gryzą. Domyślam się, że to ta sama przyczyna jak w punkcie 1.

6) Monolog. Przetrzepałem całe forum i nie znalazłem podobnego problemu do mojego. Niespecjalnie go ogarnąłem, więc zrobiłem to na podstawie dialogu.

INSTANCE DIA_PC_Hero_EXIT(C_INFO)
{
npc             = PC_Hero;
nr              = 999;
condition = DIA_PC_Hero_EXIT_Condition;
information = DIA_PC_Hero_EXIT_Info;
permanent = TRUE;
description     = "KONIEC";
};

FUNC INT DIA_PC_Hero_EXIT_Condition()
{
return TRUE;
};

FUNC VOID DIA_PC_Hero_EXIT_Info()
{
AI_StopProcessInfos (self);
};

//***********************
//1 kawałek
//***********************

INSTANCE DIA_PC_Hero_MIESO1 (C_INFO)
{
   npc          = PC_Hero;
   nr           = 1;
   condition    = DIA_PC_Hero_MIESO1_Condition;
   information  = DIA_PC_Hero_MIESO1_Info;
   permanent = TRUE;
   description = "Usmaż 1 kawałek mięsa";
};

FUNC INT DIA_PC_Hero_MIESO1_Condition()
{
    if (Npc_HasItems (other, ItFo_Mutton_raw) >=1)
    {
    return TRUE;
    };
};


FUNC VOID DIA_PC_Hero_MIESO1_Info()
{
CreateInvItem (hero, ItFo_Mutton);
NPC_RemoveInvItem (hero, ItFo_Mutton_raw);
};
//***********************
//5 kawałków
//***********************
INSTANCE DIA_PC_Hero_MIESO5 (C_INFO)
{
   npc          = PC_Hero;
   nr           = 2;
   condition    = DIA_PC_Hero_MIESO5_Condition;
   information  = DIA_PC_Hero_MIESO5_Info;
   permanent = TRUE;
   description = "Usmaż 5 kawałków mięsa";
};

FUNC INT DIA_PC_Hero_MIESO5_Condition()
{
    if (Npc_HasItems (other, ItFo_Mutton_raw) >=5)
    {
    return TRUE;
    };
};


FUNC VOID DIA_PC_Hero_MIESO5_Info()
{
CreateInvItems (hero, ItFo_Mutton, 5);
NPC_RemoveInvItems (hero, ItFo_Mutton_raw, 5);
};

//***********************
//10 kawałków
//***********************
INSTANCE DIA_PC_Hero_MIESO10 (C_INFO)
{
   npc          = PC_Hero;
   nr           = 3;
   condition    = DIA_PC_Hero_MIESO10_Condition;
   information  = DIA_PC_Hero_MIESO10_Info;
   permanent = TRUE;
   description = "Usmaż 10 kawałków mięsa";
};

FUNC INT DIA_PC_Hero_MIESO10_Condition()
{
    if (Npc_HasItems (other, ItFo_Mutton_raw) >=10)
    {
    return TRUE;
    };
};


FUNC VOID DIA_PC_Hero_MIESO10_Info()
{
CreateInvItems (hero, ItFo_Mutton, 10);
NPC_RemoveInvItems (hero, ItFo_Mutton_raw, 10);
};
//***********************
//25 kawałków
//***********************
INSTANCE DIA_PC_Hero_MIESO25 (C_INFO)
{
   npc          = PC_Hero;
   nr           = 4;
   condition    = DIA_PC_Hero_MIESO25_Condition;
   information  = DIA_PC_Hero_MIESO25_Info;
   permanent = TRUE;
   description = "Usmaż 25 kawałków mięsa";
};

FUNC INT DIA_PC_Hero_MIESO25_Condition()
{
    if (Npc_HasItems (other, ItFo_Mutton_raw) >=25)
    {
    return TRUE;
    };
};


FUNC VOID DIA_PC_Hero_MIESO25_Info()
{
CreateInvItems (hero, ItFo_Mutton, 25);
NPC_RemoveInvItems (hero, ItFo_Mutton_raw, 25);
};

//***********************
//50 kawałków
//***********************
INSTANCE DIA_PC_Hero_MIESO50 (C_INFO)
{
   npc          = PC_Hero;
   nr           = 5;
   condition    = DIA_PC_Hero_MIESO50_Condition;
   information  = DIA_PC_Hero_MIESO50_Info;
   permanent = TRUE;
   description = "Usmaż 50 kawałków mięsa";
};

FUNC INT DIA_PC_Hero_MIESO50_Condition()
{
    if (Npc_HasItems (other, ItFo_Mutton_raw) >=50)
    {
    return TRUE;
    };
};


FUNC VOID DIA_PC_Hero_MIESO50_Info()
{
CreateInvItems (hero, ItFo_Mutton, 50);
NPC_RemoveInvItems (hero, ItFo_Mutton_raw, 50);
};
//***********************
//100 kawałków
//***********************
INSTANCE DIA_PC_Hero_MIESO100 (C_INFO)
{
   npc          = PC_Hero;
   nr           = 6;
   condition    = DIA_PC_Hero_MIESO100_Condition;
   information  = DIA_PC_Hero_MIESO100_Info;
   permanent = TRUE;
   description = "Usmaż 100 kawałków mięsa";
};

FUNC INT DIA_PC_Hero_MIESO100_Condition()
{
    if (Npc_HasItems (other, ItFo_Mutton_raw) >=100)
    {
    return TRUE;
    };
};


FUNC VOID DIA_PC_Hero_MIESO100_Info()
{
CreateInvItems (hero, ItFo_Mutton, 100);
NPC_RemoveInvItems (hero, ItFo_Mutton_raw, 100);
};


Ten skrypt wrzuciłem do story/events jak PATELNIA.D. każda patelnia w Starym obozie ma ustawiony ten monolog (tak, na pewno dobrze). Jednak kiedy użyje się patelni, dostaję tylko kawałek miesa, żaden dialog się nie wyświetla.:-)

7) No i wreszcie ostatni. Hełm. Wiem, że to jest banalne, jest jednak pewien haczyk... Przykładowy skrypt hełmu:

INSTANCE HelmPaladyna(C_Item)
{
name = "Hełm Paladyna";

mainflag = ITEM_KAT_NF; //Tutaj. Jeśli ustawię jako armor, będzie dobrze, tylko NPC nie beda mogli tego założyć. Jesli ustawię Item_Kat_Nf, będzie ustawiony jako broń i będzie można założyć nieskończonośc hełmów naraz...
flags = 0;

protection [PROT_EDGE] = 50;
protection [PROT_BLUNT] = 50;
protection [PROT_POINT] = 30;
protection [PROT_FIRE] = 40;
protection [PROT_MAGIC] = 30;

value = 1251;

wear = WEAR_HEAD;
 
visual = "helmPaladyna.3ds";
visual_skin = 0;
material = MAT_METAL;

description = name;
//TEXT[0] = "";
TEXT[1] = NAME_Prot_Edge; COUNT[1] = protection [PROT_EDGE];
TEXT[2] = NAME_Prot_Point; COUNT[2] = protection [PROT_POINT];
TEXT[3] = NAME_Prot_Fire; COUNT[3] = protection [PROT_FIRE];
TEXT[4] = NAME_Prot_Magic; COUNT[4] = protection [PROT_MAGIC];
TEXT[5] = NAME_Value; COUNT[5] = value;
};

Gdyby znalazł się jakiś sposób na zrobienie normalnego hełmu, byłoby fajnie ;-)

I to by było na tyle...

14
Skrypty / Problem z nową gildią
« dnia: 2012-08-27, 19:33 »
Constants.d jest w porządku. Wygląda na to, że błąd znajduje się w guild.d, ale ja go tam nie widzę...

15
W G2 to będzie lepiej działać niż w 1. W 2 na pewno będzie można rozmawiać, schować/wyjąć broń itd. Natomiast w G1 będzie problem, bo jak wyjmiesz broni to jej nie schowasz. :D  Ale w obu częściach nie będziesz mógł np kuć i spać. Czyli prawdopodobnie nowe animacje.

@edit: o tym ja właśnie pisze, splash. ;-)

16
Offtopic / Pulpity
« dnia: 2012-08-22, 21:17 »
Ooo! Goticzek uruchomiony :D

Nie uruchomiony, tylko przypięty do paska  :ayfkm:

@down: :lol2:

17
Zmień visual PC_Hero na orka, jeśli dobrze Cie rozumiem.

18
Pytania i problemy / Błąd przy włączaniu moda
« dnia: 2012-08-22, 18:31 »
A cóż takiego zmieniałeś? Coś mi się zdaje, że reinstall by pomógł...

19
Offtopic / Pulpity
« dnia: 2012-08-22, 14:53 »
Aż takie oczojebne? :D

20
Offtopic / Pulpity
« dnia: 2012-08-22, 13:56 »
A co mi tam...



Przynajmniej jest w miarę porządek.  ^^

Strony: [1] 2 3 ... 11
Do góry