What's new

Support - pomoc przy pisaniu skrypt?w

Status
Not open for further replies.

Ldrozd

Senior User
Joined
Nov 26, 2008
Messages
572
Reaction score
44
Witamy!

Za zgod? moda Kowola pozwolili?my sobie (ja i Xart Irok) za?o?yc ten watek. Chcieliby?my utworzy? tutaj k?cik "ma?ych" i "du?ych" skrypter?w oraz os?b zainteresowanych. Celem tematu jest poszerzenie wiedzy z: lua, xml, php oraz komend na mysql
W tym w?tku mo?na si? spyta? o pomoc w pisaniu danego skryptu, gdy nagle zatrzymali?my si? i nie wiemy co dalej robi?. Gdy mamy jaki? dobry pomys?, kt?rego nie potrafimy sami zrealizowa? i podsuwamy go czytelnikom tego tematu. Tak?e mo?na tutaj poprosi? nas o napisanie skryptu. Zaznaczam jednak, ze autorzy tematu nie s? zobowi?zani do napisania go, a do pomocy w napisaniu go podaj?c wskaz?wki. Aby nie by?o niedomowien zamieszczamy regulamin.

Regulamin

1. My tu nie piszemy na zam?wienie skrypt?w.
2. Naszym g??wnym cele jest wam pom?c i was na uczy? pisania skrypt?w, ?e by nasze rodowity kraj nie by? tak pusty w ludzi potrafi?cych pisanie skrypt?w, dlatego powsta? ten temat ?e by naszych koleg?w zaskoczy? ?e co? jednak umiem wi?cej ni? tylko kopiuj wklej.
3. B?dziemy wam t?umaczy? jak? funkcje najlepiej jest u?y? w swoim skrypcie, aby go nie zepsu? i by? optymalny jak najd?u?ej co raz to nowszymi silnikami.
4. Prosz? o podawanie swojego skryptu w razie wypadku je?li skrypty by posiada? b??dy i chcia? by? si? go pozby?, b?dzie nam o wiele ?atwiej pom?c, je?li nie chcesz podawa? ca?ego skryptu, to prosz? o podanie linii w kt?rych prawdopodobnie mo?e wyst?powa? b??d, to te? mo?e nam u?atwi? w pomocy wam.

Regulamin b?dziemy si? stara? cz?sto aktualizowa?.


Ponadto, zach?camy ka?dego do aktywnego uczestniczenia w tym temacie
Pozdrawiamy i ?yczymy wszystkim udanej wsp??pracy!
Ldrozd, Xart Irok

Ponadto g??wnymi prowadz?cymi s?:
Matee
...

PS. Je?eli chcia?by? do??czy? do grona autor?w wystarczy, ?e do mnie napiszesz na PW
 

Xayan

Senior User
Joined
Jul 4, 2009
Messages
2,608
Reaction score
390
Age
28
Odp: Support - pomoc przy pisaniu skrypt?w

Dobra. Wyt?umacz mi, co daje funkcja doRefreshMap()? ?adnej r??nicy po jej u?yciu nie zauwa?y?em.
 

Xart Irok

Senior User
Joined
Sep 7, 2008
Messages
2,925
Reaction score
419
Age
32
Odp: Support - pomoc przy pisaniu skrypt?w

Funkcja doRefreshMap() s?u?y do sprawdzenia zmian na mapie czy co? zmieni?o swoje po?o?enie i zresetowanie ich oczywi?cie musimy poda? jak?? konkretn? liczb?, kt?ra si? przerzuca na czas freez na serwie. Przedstawi? kr?tkie zastosowanie.
PHP:
doRefreshMap(100000)
przerzucenie na czas - 100000/2500 = 40s
 

Xart Irok

Senior User
Joined
Sep 7, 2008
Messages
2,925
Reaction score
419
Age
32
Odp: Support - pomoc przy pisaniu skrypt?w

> > > B. U. M. P. ing < < <
 

Micki

Advanced User
Joined
May 2, 2009
Messages
373
Reaction score
23
Odp: Support - pomoc przy pisaniu skrypt?w

1 Jak nazywa?a si? funkcja w php licz?ca znaki w wyrazie.
2 Jak w lua napisa? skrypt, ?e je?eli gracz nie loguje si? przez okres wi?kszy ni? 1 miesi?c to usuwa konto i wszystkie postacie na nim zawarte.
 

Gom

User
Joined
Aug 11, 2008
Messages
33
Reaction score
1
Odp: Support - pomoc przy pisaniu skrypt?w

1.)
PHP:
<?php
$tekst = 'slowo';
echo strlen($tekst); //Skrypt liczy ile jest znak?w w danym ci?gu.
?>
2.)Mo?na to zrobi? w php i doda? rcon'a.
 

Aragornkk

Senior User
Joined
Oct 11, 2008
Messages
705
Reaction score
44
Odp: Support - pomoc przy pisaniu skrypt?w

Cicho tutaj wi?c napisze swoj? pro?b?. Napisa?em sktypt losuj?cy obra?enia od danego ?ywio?u niestety pomyli?em si? gdzie? w tabeli i nie mog? doj?? gdzie. Mo?esz obejrze? ten skrypt i powiedzie? jak go naprawi??
Code:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1)
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 1.0, 0)
local poison = createCombatObject()
setCombatParam(poison, COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
local conditionPoison = createConditionObject(CONDITION_POISON)
setConditionParam(conditionPoison, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(conditionPoison, 4, 2000, -20)
addDamageCondition(conditionPoison, 6, 2000, -10)
setCombatCondition(conditionPoison, conditionPoison)
local fire = createCombatObject()
setCombatParam(poison, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
local conditionFire = createConditionObject(CONDITION_FIRE)
setConditionParam(conditionFire, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(conditionFire, 4, 2000, -50)
addDamageCondition(conditionFire, 6, 2000, -35)
setCombatCondition(fire, conditionFire)
local energy = createCombatObject()
setCombatParam(poison, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
local conditionEnergy = createConditionObject(CONDITION_ENERGY)
setConditionParam(conditionEnergy, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(conditionEnergy, 4, 2000, -30)
addDamageCondition(conditionEnergy, 6, 2000, -20)
setCombatCondition(energy, conditionEnergy)
function onUseWeapon(cid, var)
    local szansa = math.random(100)
    local chanceToHit = {40,30,10}  --szansa terafienia dla: energia, ogie?, poison
    local combats = {"energy","fire","poison"}
    doCombat(cid,combat,var)
    for i, v in pairs(combats) do
        if(szansa > chanceToHit) then
            doCombat(cid,v)
            break
        end
    end
    return TRUE
end
 

Xart Irok

Senior User
Joined
Sep 7, 2008
Messages
2,925
Reaction score
419
Age
32
Odp: Support - pomoc przy pisaniu skrypt?w

PHP:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1)
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 1.0, 0)

local poison = createCombatObject()
setCombatParam(poison, COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)

local conditionPoison = createConditionObject(CONDITION_POISON)
setConditionParam(conditionPoison, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(conditionPoison, 4, 2000, -20)
addDamageCondition(conditionPoison, 6, 2000, -10)
setCombatCondition(poison, conditionPoison)

local fire = createCombatObject()
setCombatParam(fire, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)

local conditionFire = createConditionObject(CONDITION_FIRE)
setConditionParam(conditionFire, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(conditionFire, 4, 2000, -50)
addDamageCondition(conditionFire, 6, 2000, -35)
setCombatCondition(fire, conditionFire)

local energy = createCombatObject()
setCombatParam(energy, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)

local conditionEnergy = createConditionObject(CONDITION_ENERGY)
setConditionParam(conditionEnergy, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(conditionEnergy, 4, 2000, -30)
addDamageCondition(conditionEnergy, 6, 2000, -20)
setCombatCondition(energy, conditionEnergy)

function onUseWeapon(cid, var)
    local szansa = math.random(100)
    local chanceToHit = {40, 30, 10}  --szansa terafienia dla: energia, ogie?, poison
    local combats = {"energy","fire","poison"}
    local ret = doCombat(cid, combat, var)
    if(szansa > chanceToHit[1]) then
        ret = doCombat(cid, combats[1], var)
	elseif(szansa > chanceToHit[2]) then
        ret = doCombat(cid, combats[2], var)
	elseif(szansa > chanceToHit[3]) then
        ret = doCombat(cid, combats[3], var)
    end
    return ret
end
Powinno chodzi? ju? poprawnie ale w?tpi? ?e pomyli?e? si? przypadkiem:|.
 
Last edited:
T

Tairens

Guest
Odp: Support - pomoc przy pisaniu skrypt?w

To nie b?dzie chodzi? poprawnie, doCombat spodziewa tam si? CombatObject a wy wysy?acie jako argument funkcji zmienn? typu string. Troch? m?zgu. Tam powinno by? przes?ane conditionFire lub conditionEnergy lub conditionPoison.
 

Super

Active User
Joined
May 31, 2008
Messages
71
Reaction score
1
Odp: Support - pomoc przy pisaniu skrypt?w

Siema napisa?em wczesniej swoj temat ale nikt nie odpowiada? wi?c moze wy pomo?ecie.!
Do rzeczy...(Transform jest sta?y) Chodzi mi oto ?e je?eli mam 100lv. i nie w??czy?em transformu tego na 50 przed 100 to po wpisaniu ,,Transform" zamieniam si? odrazu w forme od 100lv. Chcia?bym aby by?o tak ?e najpierw zamieniam si? w form? od 50 a dopiero pozniej od 100. <help>
Transform.lua
Code:
function onSay(cid, words, param)
local level = 50
if getPlayerVocation(cid) == 1 then ---Naruto1
if getPlayerLevel(cid) >= level then
doPlayerSetVocation(cid, 2)
doPlayerAddHealthMax(cid,(getPlayerLevel(cid)*20))
doPlayerAddManaMax(cid,(getPlayerLevel(cid)*20))
local outfit = { lookType = 31 , lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookAddons = 0}
doSetCreatureOutfit(cid, outfit, -1)
doSendMagicEffect(getCreaturePosition(cid), 13)
addEvent(trans1,1000,cid)
end
end
local level = 100
if getPlayerVocation(cid) == 2 then ---Naruto2
if getPlayerLevel(cid) >= level then
doPlayerSetVocation(cid, 3)
doPlayerAddHealthMax(cid,(getPlayerLevel(cid)*20))
doPlayerAddManaMax(cid,(getPlayerLevel(cid)*20))
local outfit = { lookType = 32 , lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookAddons = 0}
doSetCreatureOutfit(cid, outfit, -1)
doSendMagicEffect(getCreaturePosition(cid), 13)
addEvent(trans2,2000,cid)
doPlayerSendCancel(cid, "You transform!")
else
doPlayerSendCancel(cid, "You can not transform.")
end
end
end
 
T

Tairens

Guest
Odp: Support - pomoc przy pisaniu skrypt?w

Code:
function onSay(cid, words, param)
	if getPlayerVocation(cid) == 1 then ---Naruto1
		if getPlayerLevel(cid) >= 50 then
			doPlayerSetVocation(cid, 2)
			doPlayerAddHealthMax(cid,(getPlayerLevel(cid)*20))
			doPlayerAddManaMax(cid,(getPlayerLevel(cid)*20))
			local outfit = { lookType = 31 , lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookAddons = 0}
			doSetCreatureOutfit(cid, outfit, -1)
			doSendMagicEffect(getCreaturePosition(cid), 13)
			addEvent(trans1,1000,cid)
		else
			doPlayerSendCancel(cid, "You can not transform.")
		end
	elseif getPlayerVocation(cid) == 2 then ---Naruto2
		if getPlayerLevel(cid) >= 100 then
			doPlayerSetVocation(cid, 3)
			doPlayerAddHealthMax(cid,(getPlayerLevel(cid)*20))
			doPlayerAddManaMax(cid,(getPlayerLevel(cid)*20))
			local outfit = { lookType = 32 , lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookAddons = 0}
			doSetCreatureOutfit(cid, outfit, -1)
			doSendMagicEffect(getCreaturePosition(cid), 13)
			addEvent(trans2,2000,cid)
			doPlayerSendCancel(cid, "You transform!")
		else
			doPlayerSendCancel(cid, "You can not transform.")
		end
	end
return 1
end
Spr?buj tego.
 

Matee

Active User
Joined
Oct 30, 2008
Messages
143
Reaction score
12
Odp: Support - pomoc przy pisaniu skrypt?w

A ja mam co? na wysokim poziomie dla was :D
Zobaczymy czy dacie rade . . .


Mam problem na TFSie 0.3.5 z training systemem.

nowyobrazmapabitowawj.jpg



To jest dziwny b??d i nie wiem z jakiego powodu wynika poniewa? raz jest spok?j a raz wyskakuje. System jest z tej strony:

http://tibia.net.pl/actions/16765-zaawansowany-system-trenowania.html


Najcz??ciej wyskakuje przy wpisaniu kodu, nie rozumiem jak mo?e raz znale?? playera a raz "player not found"
 

Xart Irok

Senior User
Joined
Sep 7, 2008
Messages
2,925
Reaction score
419
Age
32
Odp: Support - pomoc przy pisaniu skrypt?w

To nie b?dzie chodzi? poprawnie, doCombat spodziewa tam si? CombatObject a wy wysy?acie jako argument funkcji zmienn? typu string. Troch? m?zgu. Tam powinno by? przes?ane conditionFire lub conditionEnergy lub conditionPoison.
Nie bardzo cie rozumieniem o co ci chodzi?o. Mog? by? b??dy bo nie lubi? pisa? bro? dlatego sobie wzi??em ma?? pomoc i naprawia?em to na podstawie vip star wi?c nie mo?e by? ?le jak co? ju? by?o.
A ja mam co? na wysokim poziomie dla was :D
Zobaczymy czy dacie rade . . .
Mam problem na TFSie 0.3.5 z training systemem.

To jest dziwny b??d i nie wiem z jakiego powodu wynika poniewa? raz jest spok?j a raz wyskakuje. System jest z tej strony:
http://tibia.net.pl/actions/16765-zaawansowany-system-trenowania.html
Najcz??ciej wyskakuje przy wpisaniu kodu, nie rozumiem jak mo?e raz znale?? playera a raz "player not found"
Przegl?daj?c g??wny (Oryginalny) w?tek musz? powiedzie? ?e skrypty dalej nie zosta? naprawiony, ale jak bardzo chcesz mog? grzebn?? w kodach ale musisz mi poda? linie kt?re wywalaj? bo tak jak mi podajesz z functions.lua to ja mog? co najwy?ej strzela? kt?ra z oryginalnych funkcji si? zmieni?a.
 

Matee

Active User
Joined
Oct 30, 2008
Messages
143
Reaction score
12
Odp: Support - pomoc przy pisaniu skrypt?w

2 funkcje kt?re s? wpisane w b??d:

Code:
function isPlayerTraining(cid)
        return (getPlayerStorageValue(cid, STORAGEVALUE_TRAINING) > 0)
end


Code:
function doPlayerEndTraining(cid)
        if isPlayerTraining(cid) == TRUE then
                doTeleportThing(cid, TRAIN_EXIT_POS, FALSE)
                doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
                if getPlayerStorageValue(cid, STORAGEVALUE_TRAIN_CODE) > 1 then
                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, 'Nie przepisales kodu.')
                else
                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, 'To koniec twojego treningu.')
                end
                setPlayerStorageValue(cid, STORAGEVALUE_TRAINING, 0)
                setPlayerStorageValue(cid, STORAGEVALUE_TRAIN_CODE, 0)

        end
end



Linia 511 to:
function isItEndOfTraining(cid)

kod to:
function isItEndOfTraining(cid)
if getPlayerStorageValue(cid, STORAGEVALUE_TRAIN_CODE) ~= 1 then
doPlayerEndTraining(cid)
end
end


Linia 503 to:
function setPlayerTrainCode(cid)

kod to:
function setPlayerTrainCode(cid)
if isPlayerTraining(cid) == TRUE then
code = math.random(1, 10)
doPlayerPopupFYI(cid, "Training System:\n\n Przepisz kod podany nizej aby nie\n zostac wyrzuconym z trainig room:\n\n\n !monk " .. code .. " \n")
setPlayerStorageValue(cid, STORAGEVALUE_TRAIN_CODE, code)
end
end
 
Last edited:

Jensej

Senior User
Joined
Mar 30, 2009
Messages
1,252
Reaction score
161
Odp: Support - pomoc przy pisaniu skrypt?w

Witam.
Jako i? jestem s?abym skrypterem, chcia?bym zapyta? jak stworzy? skrypt ,kt?ry na bierz?co pokazuj? na stronie Graczy online. Tzn Gracz wchodzi do gry, na stronie wy?wietla si? 1 Players Online, jak wychodzi i w tym samym momencie jak wychodzi z gry na stronie pokazuje si? 0players online.
Dzi?kuj?.
 

GoD Pawel

User
Joined
Nov 18, 2009
Messages
40
Reaction score
0
Odp: Support - pomoc przy pisaniu skrypt?w

Witam mam problem poniewa? walka gildi nie ko?czy mi si? w ci?gu 30 minut tylko tyle ile jest to mo?liwe czyli np 24h i wiele wi?cej.

Czy mog? dosta? skrypt albo poprawienie jak zrobi? aby lastet news by?o ci?g?e co? takiego jak w tibia.com
 

Xart Irok

Senior User
Joined
Sep 7, 2008
Messages
2,925
Reaction score
419
Age
32
Odp: Support - pomoc przy pisaniu skrypt?w

Witam.
Jako i? jestem s?abym skrypterem, chcia?bym zapyta? jak stworzy? skrypt ,kt?ry na bierz?co pokazuj? na stronie Graczy online. Tzn Gracz wchodzi do gry, na stronie wy?wietla si? 1 Players Online, jak wychodzi i w tym samym momencie jak wychodzi z gry na stronie pokazuje si? 0players online.
Dzi?kuj?.
Stawiam ?e chodzi?o ci .
Witam mam problem poniewa? walka gildi nie ko?czy mi si? w ci?gu 30 minut tylko tyle ile jest to mo?liwe czyli np 24h i wiele wi?cej.
Czy mog? dosta? skrypt albo poprawienie jak zrobi? aby lastet news by?o ci?g?e co? takiego jak w tibia.com
1. A jaki masz silnik
2. Nie bardzo rozumiem twoj? wypowiedzi najlepiej jak by? ja pokaza? o co ci tak chodzi.
 

zmudzix

Advanced User
Joined
Mar 13, 2009
Messages
372
Reaction score
10
Odp: Support - pomoc przy pisaniu skrypt?w

Pisze w imieniu Goda pawla:
1.Silnik tfs 0.3.5
2. wejdz na tibia.com i przeczytaj lastet news oto mu chodzi aby by?o ci?giem
 

Ldrozd

Senior User
Joined
Nov 26, 2008
Messages
572
Reaction score
44
Odp: Support - pomoc przy pisaniu skrypt?w

Witam.
Jako i? jestem s?abym skrypterem, chcia?bym zapyta? jak stworzy? skrypt ,kt?ry na bierz?co pokazuj? na stronie Graczy online. Tzn Gracz wchodzi do gry, na stronie wy?wietla si? 1 Players Online, jak wychodzi i w tym samym momencie jak wychodzi z gry na stronie pokazuje si? 0players online.
Dzi?kuj?.
A ja mysle, ze chodzilo o to Z tym, ze w tym skrypcie wyswietla sie informacja o zalogowaniu danej osoby i to od tutora w gore. Ale przeciez juz mamy podstawe, ktora latwo przerobic
 

Notify

User
Joined
Nov 9, 2009
Messages
21
Reaction score
0
Odp: Support - pomoc przy pisaniu skrypt?w

Czesc. Potraficie napisac skrypcik, aby ring dodawal 1mlvl, nie konczyl sie i byl tylko dla knighta?

Pozdrawiam.
 
Status
Not open for further replies.
Top