Nowe funkcje do otsa by Gelio. HIT! [8.x]

Status
Zamknięty.

Gelio

Senior User
Zarejestrowany
Dołączył
Kwiecień 10, 2008
Posty
617
Liczba reakcji
98
Wiek
30
Witam. Postanowi?em napisa? kilka nowych funkcji, kt?re mam nadziej? u?yjecie w swoim otsie. Wszystkie funkcje s? zrobione w ca?o?ci przeze mnie. Zabraniam rozpowszechniania tych funkcji bez mojej zgody. No wi?c zaczynamy:

1. Na pocz?tku otw?rz plik global.lua, kt?ry znajduje si? w folderze otsa/data.
2. Teraz zjed? na sam d??.


Lista funkcji:
Kod:
Dodawanie maksymalnej many gracza
Dodawanie maksymalnego hp gracza
Dodawanie danego skilla (skill?w) graczowi.
doSearchCreatureInRoom(posx1, posy1, posx2, posy2, posz)  -- Szuka, czy w pomiedzy tymi pozycjami jest jaki? potw?r. Zwraca ilo?? potw?r?w. Je?eli nie znalaz?o ?adnych potwor?w zwraca 0
Jak doda? te funkcje?
We wcze?niej otwartym pliku global.lua na samym dole dodaj odpowiednie funkcje. Reszte trzeba dorzuci? do skrypt?w ;/ Inaczej si? nie da?o niestety.
Dla doSearchCreatureInRoom:
Kod:
function doSearchCreatureInRoom(posx1, posy1, posx2, posy2, posz)
local position1 = {x=posx1, y=posy1, z=posz}
local position2 = {x=posx2, y=posy2, z=posz}
ile_monsterow = 0
for x=position1.x, position2.x do
	for y=position1.y, position2.y do
		local monsterpos = {x=x, y=y, z=posz, stackpos=253}
		local monster = getThingfromPos(monsterpos)
		if (monster > 0) then
		if (isPlayer(monster) == 0) then
			ile_monsterow = ile_monsterow+1
		end
		end
	end
end
return ile_monsterow
end

Nast?pnie zapisujemy plik i zamykamy.


Przyk?ady u?ycia ka?dej z tych funkcji:
doPlayerAddMaxHealth:
Kod:
[COLOR="Red"]local ile_godzin = 5
local ile_hp = 100[/COLOR]

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, ile_godzin*1000*60*60)
setConditionParam(condition, CONDITION_PARAM_STAT_MAXHITPOINTS, ile_hp)

setCombatCondition(combat, condition)


function onUse(cid, item, frompos, item2, topos)
return doCombat(cid, combat, numberToVariant(cid))
end
doPlayerAddMaxMana:
Kod:
[COLOR="Red"][COLOR="Red"]local ile_godzin = 5
local ile_many = 100[/COLOR][/COLOR]

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, ile_godzin*1000*60*60)
setConditionParam(condition, CONDITION_PARAM_STAT_MAXMANAPOINTS, ile_many)

setCombatCondition(combat, condition)


function onUse(cid, item, frompos, item2, topos)
return doCombat(cid, combat, numberToVariant(cid))
end
end
doPlayerAddSkill:
Kod:
[COLOR="Red"]local skillid = 1   -- Id skila. Mozliwe: 1-melee, 2-fist, 3-club, 4-sword, 5-axe, 6-distance, 7-shielding, 8-fishing
local ile = 10   -- Ile skil dodaje
local na_ile = 60*1000   -- Ile ma dzialac w sekundach[/COLOR]

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, na_ile)
if (skillid == 1) then
setConditionParam(condition, CONDITION_PARAM_SKILL_MELEE, ile)
elseif (skillid == 2) then
setCondituonParam(condition, CONDITION_PARAM_SKILL_FIST, ile)
elseif (skillid == 3) then
setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, ile)
elseif (skillid == 4) then
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, ile)
elseif (skillid == 5) then
setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, ile)
elseif (skillid == 6) then
setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, ile)
elseif (skillid == 7) then
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, ile)
elseif (skillid == 8) then
setConditionParam(condition, CONDITION_PARAM_SKILL_FISHING, ile)
end
setCombatCondition(combat, condition)

function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end
doSearchCreatureInRoom:
Kod:
function onUse(cid, item, frompos, item2, topos)
local search = doSearchCreatureInRoom(500, 500, 600, 600, 7)
if (search == 0) then
	doPlayerAddItem(cid, 1111, 1)
	doPlayerSendTextMessage(cid,22,"Na tych pozycjach nie ma zadnego stwora. Dostajesz item o id 1111.")
else
	doPlayerSendTextMessage(cid,22,"Na tej pozycji jest jeszcze ".. search .." potworow.")
end
end

Mam nadziej?, ?e funkcje oka?? si? pomocne. Zosta?y testowane i dzia?a?y.

Pozdro,
Gelio

P.S.: U?yjesz (albo nie) = skomentuj.

@down
Jak u ciebie jest to powiedz co to za silnik. Bo jako? nigdzie nie widzia?em skryptu, kt?ry dodawa? max mane/hp.
 
Ostatnia edycja:
Odp: [8.x] Nowe funkcje do otsa by Gelio. HIT!

Odp: [8.x] Nowe funkcje do otsa by Gelio. HIT!

Spoko tylko te funkcje juz s? w wiekszosci ots
 
Odp: [8.x] Nowe funkcje do otsa by Gelio. HIT!

Odp: [8.x] Nowe funkcje do otsa by Gelio. HIT!

Fajne u mnie tego nie ma :P ,fajowy skrypt naprawde podziwiam cie gelio ocena 9/10-zawsze moze byc lepiej :P oczywiscie ze uzyje!
 
Odp: [8.x] Nowe funkcje do otsa by Gelio. HIT!

Odp: [8.x] Nowe funkcje do otsa by Gelio. HIT!

Orginalny pomys?
Umi?szcz? w swoim OTS.Mo?e ka?demu to si? przyda
Daj? ocenk? 9/10
Pozdrawiam :)
 
Odp: [8.x] Nowe funkcje do otsa by Gelio. HIT!

Odp: [8.x] Nowe funkcje do otsa by Gelio. HIT!

Heh to ?mieszne ,ale w moim LoS silniku wystarczy napisa? doPlayerAddHealth(cid,maxhealth) ,a nie niewiadomo co :)
 
Odp: Nowe funkcje do otsa by Gelio. HIT! [8.x]

Bardzo przydatne. Musz? sprawdzi? czy b?dzie dzia?a? na TFS 8.4
 
Odp: Nowe funkcje do otsa by Gelio. HIT! [8.x]

Bardzo to skomplikowane ale uda?o mi si?.
Bardzo to u?atwia ?ycie.
10/10.
 
Odp: [8.x] Nowe funkcje do otsa by Gelio. HIT!

Odp: [8.x] Nowe funkcje do otsa by Gelio. HIT!

Heh to ?mieszne ,ale w moim LoS silniku wystarczy napisa? doPlayerAddHealth(cid,maxhealth) ,a nie niewiadomo co :)

funkcja taka faktycznie istnieje, ale dodaje ?ycie do jego maksymalnej warto?ci, a skrypty Gelia zmieniaj? maksymaln? warto??!

@topic:
daje 10/10 i raczej u?yj?

Pzdr
 
Odp: Nowe funkcje do otsa by Gelio. HIT! [8.x]

Fajne funkcje ale ju? wi?kszo?? ots'?w to ma ;]10/10:D:up::up:
 
Odp: Nowe funkcje do otsa by Gelio. HIT! [8.x]

@up

Nudzi ci si? dzieciaku?
We? si? ogarnij i zamknij a komputer wywal przez okno gelio si? napracowa? a ty ,,Wi?kszo?? OTS'?w to ma" On nie jest tak chamski jak ty i nie kopjuje czego? co kto? inny zrobi?. Tego ?aden OTS nie ma bo gelio to napisa? a nie np elf czy kto?.


@Topic.

Bardzo mi si? podobaj? te funkcj?. 10/10. Ju? dodaje do ots'a, na pewno te funkcje u?atwi? pisanie skrypt?w skrypterom.



PoZdro
 
Ostatnia edycja:
Odp: Nowe funkcje do otsa by Gelio. HIT! [8.x]

doSearchCreatureInRoom(posx1, posy1, posx2, posy2, posz) -- Szuka, czy w pomiedzy tymi pozycjami jest jaki? potw?r. Zwraca ilo?? potw?r?w. Je?eli nie znalaz?o ?adnych potwor?w zwraca 0



Czy gracz liczy si? jako potw?r?
 
Odp: Nowe funkcje do otsa by Gelio. HIT! [8.x]

Apropo funkcji, mo?e napisa?by? mi skrypt na auto-wysy?anie wiadommo?ci ( czyli reklam )
na zielono, na czerwono itd, i jeszcze ?e jak zrobi sie clean odrazu pisze ile items wyczyscilo. TEN skrypt kt?ry zrobi?e? jest spoko daje 9.5/10 :)
 
Odp: Nowe funkcje do otsa by Gelio. HIT! [8.x]

Skrypty fajn? s? ale mi si? nie przydadz? 8.5/10 znalaz?em jeden b??d ale naprawi?em
 
Odp: Nowe funkcje do otsa by Gelio. HIT! [8.x]

Bardzo przydatne, naprawd? Mi na przyk?ad wszystko si? przyda?o. :)

nQ.
 
Status
Zamknięty.
Back
Do góry