Schwarzen Ritter aus der Burg
» Siedler Map Source Forum » Siedler DEdK Script Forum » Schwarzen Ritter aus der Burg
Seiten: 1
Drake
|
#1 18.04.2010 11:20 Beiträge: 132 |
Schwarzen Ritter aus der Burg
hier habe ich ein code mit dem man aus einer Burg Schwarze Ritter hohlen Kann
function Ritter() XGUIEng.ShowWidget("Levy_Duties",1) XGUIEng.TransferMaterials("Hero4_CircularAttack","Levy_Duties")--<Hier gehen die anderen Fähigkeits Button auch siehe Unten GUITooltip_Text1 = GUITooltip_LevyTaxes; GUITooltip_LevyTaxes = function() XGUIEng.SetText( gvGUI_WidgetID.TooltipBottomText,""..BL.."Bildet Den Schwarzen Ritter aus @cr "..HG.."200 Taler @cr "..R.."100 Eisen"); end end function Ausbilden() GUIAction_Salim = GUIAction_LevyTaxes GUIAction_LevyTaxes = function() AddIron(-50) AddGold(-100) CreateMilitaryGroup(1,Entities.CU_BlackKnight_LeaderMace2,4,GetPosition("posvorBurg")) end end
Hero1_SendHawk
Hero1_ProtectUnits
Hero2_PlaceBomb
Hero2_BuildCannon
Hero3_BuildTrap
Hero3_Heal
Hero4_CircularAttack
Hero4_AuraOfWar
Hero5_Camouflage
Hero5_Summon
Hero6_ConvertSettlers
Hero6_Bless
Hero7_Madness
Hero7_InflictFear
Hero8_Poison, 0)
Hero8_MoraleDamage
Hero9_CallWolfs
Hero9_Berserk
Hero10_SniperAttack
Hero10_LongRangeAura
Hero11_Shuriken
Hero11_FireworksMotivate
Hero11_FireworksFear
Hero12_PoisonRange
Hero12_PoisonArrows
warrior1024
|
#2 18.04.2010 14:08 Beiträge: 345 |
Schön, dass du dich an die GUI heran tastest, aber schon mit blossem Auge kann ich sagen:
-BL ist nicht definiert und nicht deklariert
-HG ist nicht definiert und nicht deklariert
-R ist nicht definiert und nicht deklariert
Soll heißen: Es gibt einen Error, dass BL ein nil-Wert ist!
-Die Buttoncopy brauchst du ausnahmsweise nicht. Bei anderen Tooltips ist anzumerken: Immer Überprüfen, ob auch die gehackte Tooltip gesetzt werden soll(erkennt man an Parametern). Wenn nicht, dann die Copy.
-Das gleiche gilt auch für die GUIAction.
-Man könnte den Inhalt der 2. Funktion in die erste packen:
Jetzt mal die Überarbeitung:
function Ritter() BL = " @color:0,0,255 " HG = " @color:192,192,192 " R = " @color:255,0,0 " XGUIEng.ShowWidget("Levy_Duties",1) XGUIEng.TransferMaterials("Hero4_CircularAttack","Levy_Duties")--<Hier gehen die anderen Fähigkeits Button auch siehe Unten GUITooltip_LevyTaxes = function() XGUIEng.SetText( gvGUI_WidgetID.TooltipBottomText,""..BL.."Bildet Den Schwarzen Ritter aus @cr "..HG.."200 Taler @cr "..R.."100 Eisen"); end GUIAction_LevyTaxes = function() AddIron(-50) AddGold(-100) CreateMilitaryGroup(1,Entities.CU_BlackKnight_LeaderMace2,4,GetPosition("posvorBurg")) end end
Und die lässt sich noch verbessern:
In der Funktion Ritter könntest du mit Logic.GetPlayerEntities die Burg suchen und dann von der Pos die Pos finden, an der der LE nach der Rukrutierung steht. Das überlass ich mal dir
warrior1024
____________________
"Banken machen keine Fehlentscheidungen! Haben Euch das Eure Eltern nicht beigebracht?"
- Bankier Samael Silren, Enderal
Ordensritter
|
#3 19.04.2010 10:17 Beiträge: 45 |
das heisst, man kann in der Burg Schwarze Ritter rekrutieren??
Ordensritter
____________________
Egal was passiert, die Klingen des Ordens bleiben scharf!
Eure hoffentlich auch!
LG,Ordensritter
Ordensritter
|
#5 19.04.2010 15:15 Beiträge: 45 |
Danke
OK
Ordensritter
____________________
Egal was passiert, die Klingen des Ordens bleiben scharf!
Eure hoffentlich auch!
LG,Ordensritter
Mordred
|
#6 19.04.2010 19:23 Beiträge: 939 |
Zitat von Drake:
Jop das geht dann
Tjaa, aber mit einschränkungen. du hast keinerlei beschränkungen reingemacht, dh, du kannst kaufen ohne ende. siehe hier: (aus "Der Friedliche Söldner",ca. 3 wochen alt)
GUIAction_ReserachTechnology_orig = GUIAction_ReserachTechnology function GUIAction_ReserachTechnology(_tech) if (_tech == Technologies.T_Tracking)then if (GetGold(1) > 219)then AddGold(-220) CreateMilitaryGroup(1,Entities.CU_VeteranCaptain,0,GetPosition("VeteranCaptain_Buypos")) else Message("Das kostet zuviel f"..Txt.ue.."r euch!") end else GUIAction_ReserachTechnology_orig(_tech); end end GUITooltip_ResearchTechnologies_orig = GUITooltip_ResearchTechnologies; function GUITooltip_ResearchTechnologies(_tech,_widget,_keybind) if (_tech == Technologies.T_Tracking)then XGUIEng.SetText(gvGUI_WidgetID.TooltipBottomCosts,"Taler: 220") XGUIEng.SetText(gvGUI_WidgetID.TooltipBottomText,"Veteran Captain anheuern. @cr Schlagkr"..Txt.ae.."ftiger Kumpel von Garek.") else GUITooltip_ResearchTechnologies_orig(_tech,_widget,_keybind); end end
so, hier ist der button "Fährtenlesen" verwendet, den hab ich nie gebraucht.
Ordensritter
|
#7 19.04.2010 20:31 Beiträge: 45 |
was meinst du mit kaufen ohne ende??
Ordensritter
____________________
Egal was passiert, die Klingen des Ordens bleiben scharf!
Eure hoffentlich auch!
LG,Ordensritter
Mordred
|
#8 19.04.2010 20:37 Beiträge: 939 |
bitte! ganz einfach: Du klickst "kaufen" an, dann nochmal. (und dann nochmal!)
Dummerweise gibt es nach ca. 200 Schwarzen Rittern evt. einen StackOverflow Error.
Siehe meinen Skript: Da sind sie nicht Kostenlos, wie jeder skripter auf den ersten blick sieht.
warrior1024
|
#9 19.04.2010 20:37 Beiträge: 345 |
Man kann das DZ-Limit überschreiten, wie bei den Serfs in "Der 13. Krieger".
So kann man ohne Probleme 2500 VeteranCaptains haben und die Map mit riesigen Gemetzlen gewinnen.
warrior1024
____________________
"Banken machen keine Fehlentscheidungen! Haben Euch das Eure Eltern nicht beigebracht?"
- Bankier Samael Silren, Enderal
Mordred
|
#10 19.04.2010 20:38 Beiträge: 939 |
Genau! Das DZ Limit ist gegen Creating nutzlos. wäre es allerdings eine GUIAction, dann nicht.
Ordensritter
|
#11 19.04.2010 20:40 Beiträge: 45 |
Aha, Ok. Entschuldigung dass ich das nicht sofort kapiert habe.
Grüsse
Ordensritter
____________________
Egal was passiert, die Klingen des Ordens bleiben scharf!
Eure hoffentlich auch!
LG,Ordensritter
Seiten: 1