Komisch ich henge Fest

» Siedler Map Source Forum » Siedler DEdK Script Forum » Komisch ich henge Fest

Seiten: 1

Drake
#1
19.06.2010 09:49
Beiträge: 132

Ich verstehe das net???

Könntet ihr mir bitte helfen? Also ich schaffe es nicht diese beiden Funktionen Fehlerfrei zu machen, was mache ich falsch?

Was kann hier nun Falsch sein?
(Hier soll pasieren das wenn entitys in den bereich kommen, dass sie dann verletzt werden )
Aber nichts Funktioniert irgentwie


function Tower_of_Life()
pX = GetPosition("Tower of Life")
pY = GetPosition("Tower of Life")
TowerData = {Logic.GetPlayerEntitiesInArea(2, 0, pX, pY, 500, 6)}
Logic.HurtEntity(TowerData, 30)
local health = Logic.GetEntityHealth("Tower of Life")
local maxHealth = Logic.GetEntityMaxHealth("Tower of Life")
SetHealth("Tower of Life",( (health/maxHealth) * 100) + 1)
return true
end



Hier die Benötigten Varis.

function Vari()
Exp = 0
Hexp = 10 
end



Hier wird immer der fehler "Exp is a number value" angemeckert warum?

function Exp()
if Exp <= Hexp then
Message("Sammelt mehr Erhfahrung um in einen Höheren rang auf zusteigen!")
else
Hexp = Hexp + 10
HeroLVL = 2
Hero_LVL = " @color:190,255,0 "..HeroLVL..""
XGUIEng.SetText( "TopMainMenuTextButton", "@color:0,0,0,0: ....... @color:255,255,255 Menü @cr @cr Info über Held: @cr @color:255,0,0 Lvl."..Hero_LVL.."")
return true
end
end



Vielen Dank für eure Hilfen Drake

Dieser Beitrag wurde von Drake am 19.06.2010 um 10:51 editiert.

warrior1024
#2
19.06.2010 11:16
Beiträge: 345

Zuerst mal zu der Funktion ganz oben:

function Tower_of_Life()
if IsDead("TowerofLife") then
return true
end
	pos = GetPosition("TowerofLife")
	pX = pos.X --woher soll GetPosition wissen, ob du X oder Y willst?
	pY = pos.Y
	TowerData = {Logic.GetPlayerEntitiesInArea(2, 0, pX, pY, 500, 6)} --Liefert so geschrieben ein table zurück
	for i = 2, TowerData[1]+1, 1 do
		Logic.HurtEntity(TowerData[i], 30)
	end
	local health = Logic.GetEntityHealth("TowerofLife")
	local maxHealth = Logic.GetEntityMaxHealth("TowerofLife")
	SetHealth("TowerofLife",( (health/maxHealth) * 100) + 1) --Du willst also, dass pro Sekunde ein Heal von 1% erfolgt?
end


Müsste funktionieren. Aber du willst, dass Player 2 den Schaden kriegt->Dem Player gehört der Turm->Langweilig, weil bestens geschützt.
Und mit Belagerungskanonen haue ich das Teil weg! Außerdem sind Leerzeichen in Skriptnamen sch...lecht.

Zu 2. und 3.:
Ist doch logisch, du hast 2x den selben Namen verteilt->Namenskonflikt
Benenne die 3. Funktion in Exp_func um, und der Fehler passiert nicht mehr.

Und wieso arbeitest du an sowas mit Exp? Da sitzt ich schon dran und setzte das ganze mit AddLegende, Button-Hacks und einem EP-System um. Man kann durch Kills EP bekommen, wenn genug EP da sind, kann man ein Lvl-Up machen, dann krieg man 5 Statpoints geschenkt und kann die Attribute steigern.
So ein System macht bei mir 560 Zeilen nach dem ersten Bugfix.

warrior1024

____________________
"Banken machen keine Fehlentscheidungen! Haben Euch das Eure Eltern nicht beigebracht?"
- Bankier Samael Silren, Enderal

Dieser Beitrag wurde von warrior1024 am 19.06.2010 um 11:34 editiert.

Drake
#3
19.06.2010 11:47
Beiträge: 132

Hey Danke warrior hat funktioniert

Ps: Du kennst dich so gut aus im script Hut ab

Seiten: 1

SiteEngine v1.5.0 by nevermind, ©2005-2007
Design by SpiderFive (www.siedler-games.de) - English translation by juja

Impressum