-Inne Skrypty na zam?wienie

Status
Zamknięty.
Odp: Skrypty na zam?wienie

@rafiik18
Rozbudowane skrypty wykonuj? odp?atnie. Mam napisany taki system przez talkactions na sprzeda?, je?eli jeste? zainteresowany wi?cej info masz tutaj OTworks - Task System.
 
Odp: Skrypty na zam?wienie

Rodzaj: chyba actions
Opis: Gdy u?yjemy item o id np. 50 ,zmienia nam outfit i trwa to minute po tej minucie wracamy do stanu sprzed u?ycia itemu.
1-20poziom- Nasze skille wzrastaj? dwukrotnie lecz tracimy 50% hp
21-40poziom - Nasza szybko?? chodzenia wzrasta o 50%, skille tak?e wzrastaj? dwukrotnie.
41-70poziom - Szybko?? , skille wzrastaj? trzykrotnie lecz zabiera to nam 75% hp
71-99poziom - Szybko??, skille wzrastaj? trzykrotnie.
100 poziom w g?re - Nasze skille wzrastaj? czterokrotnie, lecz szybko?? spada o 25%, tracimy 80% hp.
Silnik: TFS 0.3.6pl1


#down
w trzecim i czwartym szybko?? mo?e wzrasta? trzykrotnie, lecz sam ju? mog? sobie to doda? :)
BTW. Dzi?ki za kolejny skrypt, reput ++


#Anastazjo
Nie musisz komentowa? wszystkiego co si? dziej? na forum, to co Ci si? niepodobna mo?esz zachowa? dla siebie i ka?dy bd Ci za to wdzi?czny:) Poza tym sk?d wiesz ?e akurat mia?em na my?li skrypty do mojego ots Naruto? Jeste? wszech wiedz?cy?

#Piotre00
btw. co to Susanoo?

Odpowied?:
300px-Susanoo.jpg
 
Ostatnia edycja:
Odp: Skrypty na zam?wienie

@Rosem
Niestety to nie takie proste. Mo?na to zrobi? na conditions, jednak musi to mie? sta?? warto?? (z g?ry ustalona), gdy? warto?ci musz? by? definiowane podczas ?adowania skryptu. Nie widz? innego sposobu nie ingeruj?c w baz? danych (i nie obci??aj?c serwera).
Nie napisa?e? te? jednoznacznie czy gracz ma traci? 50% AKTUALNEGO czy MAKSYMALNEGO hp. U?y?em maksymalnego.
W trzecim i czwartym przypadku nie poda?e? o ile powinna wzrasta? pr?dko??.
Je?eli gracz ma za ma?o HP to zginie. Je?eli potrzeba, to napisz, dodam ograniczenie.

data/actions/actions.xml
Kod:
<action itemid="id" event="script" value="nazwa.lua"/>

data/actions/scripts/nazwa.lua
Kod:
local condition1 = createConditionObject(CONDITION_ATTRIBUTES) -- skille wzrastaja "dwukrotnie"
setConditionParam(condition1, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition1, CONDITION_PARAM_STAT_MAGICPOINTS, 20)
setConditionParam(condition1, CONDITION_PARAM_SKILL_FIST, 20)
setConditionParam(condition1, CONDITION_PARAM_SKILL_CLUB, 20)
setConditionParam(condition1, CONDITION_PARAM_SKILL_SWORD, 20)
setConditionParam(condition1, CONDITION_PARAM_SKILL_AXE, 20)
setConditionParam(condition1, CONDITION_PARAM_SKILL_DISTANCE, 20)
setConditionParam(condition1, CONDITION_PARAM_SKILL_SHIELD, 20)
setConditionParam(condition1, CONDITION_PARAM_SKILL_FISHING, 20)

local condition2 = createConditionObject(CONDITION_ATTRIBUTES) -- skille wzrastaja "trzykrotnie"
setConditionParam(condition2, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition2, CONDITION_PARAM_STAT_MAGICPOINTS, 40)
setConditionParam(condition2, CONDITION_PARAM_SKILL_FIST, 40)
setConditionParam(condition2, CONDITION_PARAM_SKILL_CLUB, 40)
setConditionParam(condition2, CONDITION_PARAM_SKILL_SWORD, 40)
setConditionParam(condition2, CONDITION_PARAM_SKILL_AXE, 40)
setConditionParam(condition2, CONDITION_PARAM_SKILL_DISTANCE, 40)
setConditionParam(condition2, CONDITION_PARAM_SKILL_SHIELD, 40)
setConditionParam(condition2, CONDITION_PARAM_SKILL_FISHING, 40)

local condition3 = createConditionObject(CONDITION_ATTRIBUTES) -- skille wzrastaja "czterokrotnie"
setConditionParam(condition3, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition3, CONDITION_PARAM_STAT_MAGICPOINTS, 60)
setConditionParam(condition3, CONDITION_PARAM_SKILL_FIST, 60)
setConditionParam(condition3, CONDITION_PARAM_SKILL_CLUB, 60)
setConditionParam(condition3, CONDITION_PARAM_SKILL_SWORD, 60)
setConditionParam(condition3, CONDITION_PARAM_SKILL_AXE, 60)
setConditionParam(condition3, CONDITION_PARAM_SKILL_DISTANCE, 60)
setConditionParam(condition3, CONDITION_PARAM_SKILL_SHIELD, 60)
setConditionParam(condition3, CONDITION_PARAM_SKILL_FISHING, 60)


local c = {
	t = 50, -- po ilu sekundach skille maj? wr?ci? do normalnego stanu
	stor = 77310,
	stor2 = 77311,
	textColor = 20,
}
local function stopIt(cid)
	if isPlayer(cid) and getPlayerStorageValue(cid,c.stor) == 1 then
		doRemoveCondition(cid, CONDITION_ATTRIBUTES)
		doChangeSpeed(cid,getPlayerStorageValue(cid,c.stor2))
		setPlayerStorageValue(cid,c.stor,-1)
		setPlayerStorageValue(cid,c.stor2,-1)
	end
	return true
end


function onUse(cid, item, fromPosition, itemEx, toPosition)
	if getPlayerStorageValue(cid,c.stor) == 1 then
		return true
	end
	
	local sp = getCreatureSpeed(cid)
	setPlayerStorageValue(cid,c.stor2,sp)
	if getPlayerLevel(cid) <= 20 then
		doCreatureAddHealth(cid,-(getCreatureMaxHealth(cid)*0.5))
		doAddCondition(cid, condition1)
	elseif getPlayerLevel(cid) <= 40 then
		doAddCondition(cid, condition1)
		doChangeSpeed(cid,sp+(sp*0.5))
	elseif getPlayerLevel(cid) <= 70 then
		doCreatureAddHealth(cid,-(getCreatureMaxHealth(cid)*0.75))
		doAddCondition(cid, condition2)
		doChangeSpeed(cid,sp+(sp*0.5))
	elseif getPlayerLevel(cid) <= 99 then
		doAddCondition(cid, condition2)
		doChangeSpeed(cid,sp+(sp*0.5))
	else
		doChangeSpeed(cid,sp-(sp*0.25))
		doCreatureAddHealth(cid,-(getCreatureMaxHealth(cid)*0.8))
		doAddCondition(cid, condition3)
	end
	setPlayerStorageValue(cid,c.stor,1)
	addEvent(stopIt,c.t*1000,cid)
	return true
end

do login.lua dodaj (pod function onLogin)
Kod:
setPlayerStorageValue(cid,77310,-1)

Storage musi si? pokrywa?.

@down
Ka?dy ma prawo do swojego zdania. Nazywam go rozbudowanym, bo w moim umie?ci?em du?? mo?liwo?? konfiguracji. Je?eli sprzedaj? rozbudowan? wersj? task systemu to nie b?d? pisa? za darmo mniej rozbudowanej. Je?eli Ci si? nie podoba to prosz?, wyjd? i nie za?miecaj tematu.
 
Ostatnia edycja:
Odp: Skrypty na zam?wienie

Task system nazywasz rozbudowanym skryptem?? W?a?nie udowodni?e? ?e s?aby z ciebie "Skrypter" taki skrypt za kas? hahah dobre sobie. powodzenia.
 
Odp: Skrypty na zam?wienie

Haha sorry ale nie mog?, Rosem i Elasir, macie zamiar stworzy? swoje OTSy ?eruj?c na dobroczynno?ci autora tematu? Rosem ty z tego co wiem uwa?asz si? za skryptera, a masz problem z takimi skryptami, a zw?aszcza z Susanoo.. Elasir n/c nuuber ;d

@Topic
Piszesz, ?e nie robisz skrypt?w pod poki i inne anime otsy, a pan Elasir robi DB OTS'a, a Rosem Naruto.

?eby nie by?o, ?e offtopuje.
Poprosze skrypt na hmm, item, kt?ry po u?yciu mi da 1 gp i zniknie, my?l?, ?e nie b?dziesz mia? z tym problemu bo wida? ju? na 1 rzut oka, ?e ogarniasz.

Powodzonka.

@Down
Tutaj si? z tob? zgodz?, skrypty dla Pana Rosema mo?na wykorzysta? na r??ne sposoby oraz koncepcj?, lecz tu nie chodzi o zastosowanie, a o "etyk? zawodow?". Jak kto? kto nie potrafi napisa? takiego skryptu (1 dla Rosema) mo?e nazywa? siebie Skrypterem? Co do post?w typu Pana Rafiika to nie radz? ci si? takimi przejmowa?, poniewa? s? to posty w stylu rozpieszczonego dzieciara, kt?ry nie dosta? tego czego chcia?, a skoro twierdzi, ?e zlecony skrypt/system nie jest a? tak skomplikowany by za niego p?aci? to czemu sam go nie zrobi? - Wycena czego? o czym nie mamy poj?cia = nuuber.
 
Ostatnia edycja:
Odp: Skrypty na zam?wienie

@Anastazjo
Z za?o?enia mia?em nie pisa? skrypt?w pod ?adne poki/anime, jednak to uleg?o ma?ej zmianie. Je?eli nie ka?? mi u?ywa? jakich? rzeczy TYLKO z pok?w/anime (np. "zr?b limit, ?eby gracz m?g? u?ywa? tylko jednego pokemona naraz plax!") oraz nie wymagaj? ode mnie wiedzy na te tematy, to mog? to napisa?, bo, musisz przyzna?, ?e ostatni skrypt dla Rosem'a mo?na wykorzysta? w bardzo wielu przypadkach, po zaledwie kosmetycznych zmianach.
Moim celem jest nie tylko napisanie skryptu dla jednej osoby, lecz to, ?eby ktokolwiek, kto tylko czyta ten temat, m?g? stworzy? co? na podstawie mojego skryptu (lub cho?by podpatrze? gotowe rozwi?zania, poszerzy? swoj? wiedz?).
(swoj? drog? teksty w stylu: "nie napiszesz mi tego? jeste? g?wnianym skrypterem" potrafi? zdemotywowa?.)
Wygada?em si?, wyja?ni?em swoje intencje, dzi?kuj? za uwag? :).
btw. co to Susanoo?

Skrypt ciekawy, widz? wiele zastosowa? :)
data/actions/actions.xml
Kod:
<action itemid="id" event="script" value="nazwa.lua"/>

data/actions/scripts/nazwa.lua
Kod:
function onUse(cid, item, fromPosition, itemEx, toPosition)
	doPlayerAddMoney(cid, 1)
	doRemoveItem(item.uid, 1)
	return true
end

Notka moderatorska:
Przenosz? do bardziej odpowiedniego dzia?u.
//wujush
 
Ostatnio edytowane przez moderatora:
Odp: Skrypty na zam?wienie

Silnik, wersja klienta: TFS 8.60
Typ skryptu: chyba Actions
Opis: Gdy uzyje itemu da mi on profesje epic np. uzyje knightem itemu to bede epic knight
, gdy uzyje druidem bede epic druidem i tak dalej. Id epic : Knight - 12 Paladyn - 11 Druid - 10 Sorcerer 9
 
Odp: Skrypty na zam?wienie

Silnik, wersja klienta: TFS 0.4 SVN, 8.60
Typ skryptu: Talkactions
Opis: Komenda !pz , gdy zabije gracza mamy 15 min pz, po wpisaniu komendy !pz b?dzie nam pokazywa?o ile zosta?o czasu do ko?ca pz.
 
Odp: Skrypty na zam?wienie

Silnik, wersja klienta: TFS 8.60
Typ skryptu: N*P*C
Opis: npc ktory daje nam np. leather boots jednakze ten item mozna brac za darmo wielokrotnie tylko co 2godziny. Kazdy gracz moze co 2h nie to ze sklep daje raz na 2h bez wyjatku :)

Dziekuje
 
Odp: Skrypty na zam?wienie

Idioci nie spamujcie bo g?wno dostaniecie -.- regulaminu nie umiecie czyta? a spam kurw* gorszy niz przy korycie dla ?wi?.

3 zlecenia. (je?eli w temacie s? 3 zlecenia POCZEKAJ a? je wykonam, je?eli nie zastosujesz si? do tego punktu Twoja pro?ba zostanie zignorowana)
A jest ju? dobre 5+ nie wykonanych
 
Odp: Skrypty na zam?wienie

Silnik: Evolution by KoPeC (8.10)
Typ Skryptu: switch system i du?o w Actions
OPIS: Potrzebuj? DOK?ADNIE wyt?umaczonego skryptu na "Boisko Pi?ki No?nej". Widzia?em kilka na tym forum ale nie by?y wyt?umaczone, to znaczy:
-brak wyboru pola bramki <<< NIE POMYLI? Z POLEM BRAMKARZA
(Chodzi oto ?eby by?o - o[____]o <<< WIEDZ?C, ?E TO BOISKO,a MA?A LITERA "o" to BRAMKA (chodzi o to, ?eby by?a poza boiskiem)
-brak potrzeby s?dzi (chodzi o to, ?e ?eby wej?? na boisko potrzeba 6 os?b
i musz? oni sta? na polach w ten spos?b - OOO X OOO - @@@@ O-jest to gracz @@@@ X-jest to switch (taka d?wignia, poprzez kt?r? (po zape?nienu 6 miejsc) steleportuje na boisko i po odliczeniu do 3 (3, 2, 1, GO) AUTOMATYCZNE rozpocz?cie meczu BEZ POTRZEBY S?DZI !!!!!!!!!!
 
Odp: Skrypty na zam?wienie

Do wszystkich maj?cych problem z przeczytaniem zaledwie kilku punktowego regulaminu: nieregulaminowych skrypt?w nie wykonuj?.

Notka moderatorska:
Od siebie dodam, ?e ka?dy post, w kt?rym NIE B?DZIE ZAWARTA JEDNA PRO?BA, b?dzie usuwany, a autor (posta ofc) sko?czy z ostrze?eniem bez ?adnych upomnie?. Nie przeginacie czasem?
~Redd


Aktualnie jestem chory (grypa) i nie mia?em czasu na robienie rozbudowanych skrypt?w.

@merlin mag
#1 Rozbuduj go jak chcesz
actions.xml
Kod:
	<action itemid="2222" event="script" value="nazwa.lua"/>

actions/scripts/nazwa.lua
Kod:
function onUse(cid, item, fromPosition, itemEx, toPosition)
	local item_id = 1111
	local vocations = {1,2,5,6}
	if itemEx.itemid == item_id and isInArray(getPlayerVocation(cid),vocations) then
		playerLearnInstantSpell(cid, "Light")
	end
	return true
end

@pejos
movements.xml
Kod:
<movevent type="Equip" itemid="1111" slot="ring" event="script" value="nazwa.lua"/>
<movevent type="DeEquip" itemid="1111" slot="ring" event="script" value="nazwa.lua"/>

movements/scripts/nazwa.lua
Kod:
local cond1 = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(cond1, CONDITION_PARAM_STAT_MAXHITPOINTSPERCENT, 150)
setConditionParam(cond1, CONDITION_PARAM_STAT_MAXMANAPOINTSPERCENT, 150)

function onEquip(cid, item, slot)
return doAddCondition(cid, cond1)
end

function onDeEquip(cid, item, slot)
return doRemoveCondition(cid, CONDITION_ATTRIBUTES)
end

@Alanik40
Rozumiem, ?e ma to by? kolejny poziom promocji, dlatego u?y?em tej funkcji.

actions.xml
Kod:
	<action itemid="2222" event="script" value="nazwa.lua"/>
actions/scripts/nazwa.lua
Kod:
function onUse(cid, item, fromPosition, itemEx, toPosition)
	setPlayerPromotionLevel(cid, 2)
	doRemoveItem(item.uid)
	return true
end

Je?eli b?dzie jaki? b??d prosz? napisa?
 
Ostatnio edytowane przez moderatora:
Odp: Skrypty na zam?wienie

Silnik, wersja klienta: TFS 0.4 DEV, 8.60
Typ skryptu: Mods
Opis: Potrzebuje skryptu gdy zabije danego bossa to w danym miejscu pojawia mi si? teleport. Co? jak na INQ :))
 
Odp: Skrypty na zam?wienie

Silnik, wersja klienta: TFS 0.3.6 Crying Damson
Typ skryptu: Creaturesctipr, Globalevent i chyba Actions
Opis: Chcialbym aby? napisa? mi skrypt na posiadanie Mounta, oraz cos w stylu Najemnika czy tam Pokemona. Je?eli dalby? rad? to b?d? mega wdzi?czny i poleci Repik :D
*Screen lub filmik:
* opcjonalnie
 
Odp: Skrypty na zam?wienie

@rafiik18
Na potrzeby tego skryptu stworzy?em funkcj? doRemoveTp, mo?na j? by?o pomin??, ale dzi?ki temu masz uniwersalna funkcj? do usuwania teleportu z wybranego pos :D.

creaturescripts.xml
Kod:
<event type="kill" name="teleporty" event="script" value="nazwa.lua"/>

creaturescripts/scripts/login.lua
Kod:
registerCreatureEvent(cid, "teleporty")

Nazwy potwor?w zapisuj z ma?ej litery
creaturescripts/scripts/nazwa.lua
Kod:
local teleportLib = { -- gdzie zostanie utworzony, dokad prowadzi
        ["rat"] = { gdzie = { x=160, y=90, z=7 }, dokad = { x=162, y=90, z=7 }},                
        ["cave rat"] = { gdzie = { x=200, y=200, z=7 }, dokad = { x=202, y=200, z=7 }},                
}

local function doRemoveTp(pos)
	return doRemoveItem(getTileItemById(pos,1387).uid,1)
end 

local czas = 15 -- czas do znikniecia tp W SEKUNDACH

function onKill(cid, target)
 local get = teleportLib[string.lower(getCreatureName(target))]
    if get then
		doCreateTeleport(1387, get.dokad, get.gdzie)
		addEvent(doRemoveTp, czas * 1000, get.gdzie)
	end
    return true
end

Testowany na TFS 0.3.6pl1

@haski
Istnieje ju? taki skrypt, zosta? nazwany pet system. Opcja szukaj nie boli.
http://tibia.net.pl/kosz-biblioteki/1700-pet-system.html
 
Ostatnia edycja:
Odp: Skrypty na zam?wienie

Silnik, wersja klienta: TFS 8.60
Typ skryptu: Chyba Actions
Opis: Gdy gracz wbije 100 lvl otrzyma 10cc.
 
Ostatnia edycja:
Odp: Skrypty na zam?wienie

@Alanik40
Mam nadziej?, ?e przyda si? wielu osobom

creaturescripts.xml
Kod:
<event type="advance" name="reward" event="script" value="nazwa.lua"/>

creaturescripts/scripts/nazwa.lua
Kod:
function onAdvance(cid, skill, oldLevel, newLevel)
	if skill == SKILL__LEVEL and newLevel == 100 then
		doPlayerAddMoney(cid,100000)
	end
	return true
end

creaturescripts/scripts/login.lua
dodaj
Kod:
	registerCreatureEvent(cid, "reward")

@Chemiczek
To jest do??czone do ka?dego TFSa.
Skrypt nie m?j, skopiowany z oryginalnej paczki:
Kod:
function onSay(cid, words, param, channel)
	if(param == '') then
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.")
		return true
	end

	local pid = getPlayerByNameWildcard(param)
	if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. param .. " not found.")
		return true
	end

	local tmp = {accountId = getPlayerAccountId(pid), ip = getPlayerIp(pid)}
	local pos = getCreaturePosition(pid)
	doPlayerPopupFYI(cid, "Information about player" ..
		"\nName: " .. getCreatureName(pid) ..
		"\nGUID: " .. getPlayerGUID(pid) ..
		"\nGroup: " .. getPlayerGroupName(pid) ..
		"\nAccess: " .. getPlayerAccess(pid) ..
		"\nVocation: " .. getVocationInfo(getPlayerVocation(pid)).name ..
		"\nStatus:" ..
			"\nLevel - " .. getPlayerLevel(pid) .. ", Magic Level - " .. getPlayerMagLevel(pid) .. ", Speed - " .. getCreatureSpeed(pid) ..
			"\nHealth - " .. getCreatureHealth(pid) .. " / " .. getCreatureMaxHealth(pid) .. ", Mana - " .. getCreatureMana(pid) .. " / " .. getCreatureMaxMana(pid) ..
			"\nSkills:" ..
			"\nFist - " .. getPlayerSkillLevel(pid, SKILL_FIST) .. ", Club - " .. getPlayerSkillLevel(pid, SKILL_CLUB) .. ", Sword - " .. getPlayerSkillLevel(pid, SKILL_SWORD) .. ", Axe - " .. getPlayerSkillLevel(pid, SKILL_AXE) ..
			"\nDistance - " .. getPlayerSkillLevel(pid, SKILL_DISTANCE) .. ", Shielding - " .. getPlayerSkillLevel(pid, SKILL_SHIELD) .. ", Fishing - " .. getPlayerSkillLevel(pid, SKILL_FISHING) ..
		"\nCash:" ..
			"\nCrystal - " .. getPlayerItemCount(pid, 2160) .. ", Platinum - " .. getPlayerItemCount(pid, 2152) .. ", Gold - " .. getPlayerItemCount(pid, 2148) ..
			"\nBalance: " .. getPlayerBalance(pid) ..
			"\nPosition: [X - " .. pos.x .. " | Y - " .. pos.y .. " | Z - " .. pos.z .. "]" ..
		"\n\nInformation about account" ..
		"\nName: " .. getPlayerAccount(pid) ..
		"\nID: " .. tmp.accountId ..
		"\nNotations: " .. getNotationsCount(tmp.accountId) ..
		"\nIP: " .. doConvertIntegerToIp(tmp.ip) .. " (" .. tmp.ip .. ")")
	return true
end

@max952
Tych skrypt?w jest masa, napisz do mnie na gg to podam Ci linka i wyt?umacz? jak skonfigurowa?.
 
Ostatnia edycja:
Odp: Skrypty na zam?wienie

Widzia?em ju? wcze?niej pro?b? o ten skrypt ale jaki? MOD usun?? post z jego pro?b?. Prawie tylko dlatego utworzy?em tu konto.

Silnik, wersja klienta: TFS 8.60
Typ skryptu: Chyba Talkactions
Opis: Gdy gracz wpisze !info Name wyskoczy informacja w takim osobnym okienku (bo nie wiem jak to nazwa?) i pojawi? si? kolejno informacje o graczu.
Name:
Guild:
Postion: tut, S tut albo player (wy?szych rang ni? S tut nie mozna sprawdza?, ewentualnie je?eli si? nie da to mo?na to pomin??.
Prestige/Resets/Reborns:
Level:
Magic Level:
(3 linikji przerwy)
Total Deaths: (wszystkie dedy)
Player Kills: (liczba frag?w[nawet tych co znik?y])
PVP Rating: (obliczany player kills : (dzielone ;p) przez total dedy)

Je?eli ci si? uda bd bardzo wdzi?czny :))
 
Odp: Skrypty na zam?wienie

O moim skrypcie zapomnia?e? :(
 
Odp: Skrypty na zam?wienie

Silnik, wersja klienta - TFS 0.4_dev, 8.6
Typ skrypty - Movements, Actions, Creaturescript, NPC (mo?e byc w formie mods), to zale?y od Ciebie.
Opis : Je?li jeste? skrypterem to nie b?dzie dla Ciebie napisanie mi Mercenary System (Targowisko System), mo?na to napisac bez u?ycia C++.
Odsy?am Ci? do tego linku : OrionOTS - System Targowisk

Pozdrawiam xD
 
Status
Zamknięty.
Back
Do góry