Atoom
04.03.2008, 19:42
Is nix besonderes aber wär doch gut zu wissen. Und zwar zum einen: Wie kann man wenn man bei einer eigenen rasse die rassenboni-abgeändert hat die bei einem schon gespielten charakter updaten (also ne bessere version als des RaceMenu)?
Des andere Ist eher unnwichtig, aber würd mir beim modden schon helfen, da ich wenn ich neue rüstungen/waffen ins spiel bring gerne auch so mitleveln lass selbst wenn man sie schon hat (wie des "QuestAwardLeveler"-PI) aber meine Lösung funktioniert zwar toll, aber is mir etwas lang geraten. Bei einem Rüstungsset mit 6 Teilen, von denen es wiederum für die Levels 6 verschiedene Versionen gibt, ist mein Quest-Script schon 261 Zeilen lang:
scn aashadowruestungLVLquestSCRIPT
short boots
short cuirass
short gautlets
short greaves
short helmet
short shield
short skirt
short boots1
short boots2
short boots3
short boots4
short cuirass1
short cuirass2
short cuirass3
short cuirass4
short gautlets1
short gautlets2
short gautlets3
short gautlets4
short greaves1
short greaves2
short greaves3
short greaves4
short helmet1
short helmet2
short helmet3
short helmet4
short shield1
short shield2
short shield3
short shield4
short skirt1
short skirt2
short skirt3
short skirt4
short ruecktausch
begin gamemode
if getstage aashadowruestungLVLquest < 10
return
endif
if getstage aashadowruestungLVLquest == 10
if boots == 0
if boots1 == 0 && player.getitemcount aashadowboots == 1 && player.getlevel >= 2
player.removeitem aashadowboots 1
player.additem aashadowboots1 1
set boots1 to 1
endif
if boots2 == 0 && player.getitemcount aashadowboots1 == 1 && player.getlevel >= 6
player.removeitem aashadowboots1 1
player.additem aashadowboots2 1
set boots1 to 1
endif
if boots3 == 0 && player.getitemcount aashadowboots2 == 1 && player.getlevel >= 10
player.removeitem aashadowboots2 1
player.additem aashadowboots3 1
set boots1 to 1
endif
if boots4 == 0 && player.getitemcount aashadowboots3 == 1 && player.getlevel >= 15
player.removeitem aashadowboots3 1
player.additem aashadowboots4 1
set boots1 to 1
endif
if player.getitemcount aashadowboots4 == 1 && player.getlevel >= 20
player.removeitem aashadowboots4 1
player.additem aashadowboots5 1
set boots to 1
endif
endif
if cuirass == 0
if cuirass1 == 0 && player.getitemcount aashadowcuirass == 1 && player.getlevel >= 2
player.removeitem aashadowcuirass 1
player.additem aashadowcuirass1 1
set cuirass1 to 1
endif
if cuirass2 == 0 && player.getitemcount aashadowcuirass1 == 1 && player.getlevel >= 6
player.removeitem aashadowcuirass1 1
player.additem aashadowcuirass2 1
set cuirass2 to 1
endif
if cuirass3 == 0 && player.getitemcount aashadowcuirass2 == 1 && player.getlevel >= 10
player.removeitem aashadowcuirass2 1
player.additem aashadowcuirass3 1
set cuirass3 to 1
endif
if cuirass4 == 0 && player.getitemcount aashadowcuirass3 == 1 && player.getlevel >= 15
player.removeitem aashadowcuirass3 1
player.additem aashadowcuirass4 1
set cuirass4 to 1
endif
if player.getitemcount aashadowcuirass4 == 1 && player.getlevel >= 20
player.removeitem aashadowcuirass4 1
player.additem aashadowcuirass5 1
set cuirass to 1
endif
endif
if gautlets == 0
if gautlets1 == 0 && player.getitemcount aashadowgautlets == 1 && player.getlevel >= 2
player.removeitem aashadowgautlets 1
player.additem aashadowgautlets1 1
set gautlets1 to 1
endif
if gautlets2 == 0 && player.getitemcount aashadowgautlets1 == 1 && player.getlevel >= 6
player.removeitem aashadowgautlets1 1
player.additem aashadowgautlets2 1
set gautlets2 to 1
endif
if gautlets3 == 0 && player.getitemcount aashadowgautlets2 == 1 && player.getlevel >= 10
player.removeitem aashadowgautlets2 1
player.additem aashadowgautlets3 1
set gautlets3 to 1
endif
if gautlets4 == 0 && player.getitemcount aashadowgautlets3 == 1 && player.getlevel >= 15
player.removeitem aashadowgautlets3 1
player.additem aashadowgautlets4 1
set gautlets4 to 1
endif
if player.getitemcount aashadowgautlets4 == 1 && player.getlevel >= 20
player.removeitem aashadowgautlets4 1
player.additem aashadowgautlets5 1
set gautlets to 1
endif
endif
if greaves == 0
if greaves1 == 0 && player.getitemcount aashadowgreaves == 1 && player.getlevel >= 2
player.removeitem aashadowgreaves 1
player.additem aashadowgreaves1 1
set greaves1 to 1
endif
if greaves2 == 0 && player.getitemcount aashadowgreaves1 == 1 && player.getlevel >= 6
player.removeitem aashadowgreaves1 1
player.additem aashadowgreaves2 1
set greaves2 to 1
endif
if greaves3 == 0 && player.getitemcount aashadowgreaves2 == 1 && player.getlevel >= 10
player.removeitem aashadowgreaves2 1
player.additem aashadowgreaves3 1
set greaves3 to 1
endif
if greaves4 == 0 && player.getitemcount aashadowgreaves3 == 1 && player.getlevel >= 15
player.removeitem aashadowgreaves3 1
player.additem aashadowgreaves4 1
set greaves4 to 1
endif
if player.getitemcount aashadowgreaves4 == 1 && player.getlevel >= 20
player.removeitem aashadowgreaves4 1
player.additem aashadowgreaves5 1
set greaves to 1
endif
endif
if helmet == 0
if helmet1 == 0 && player.getitemcount aashadowhelmet == 1 && player.getlevel >= 2
player.removeitem aashadowhelmet 1
player.additem aashadowhelmet1 1
set helmet1 to 1
endif
if helmet2 == 0 && player.getitemcount aashadowhelmet1 == 1 && player.getlevel >= 6
player.removeitem aashadowhelmet1 1
player.additem aashadowhelmet2 1
set helmet2 to 1
endif
if helmet3 == 0 && player.getitemcount aashadowhelmet2 == 1 && player.getlevel >= 10
player.removeitem aashadowhelmet2 1
player.additem aashadowhelmet3 1
set helmet3 to 1
endif
if helmet4 == 0 && player.getitemcount aashadowhelmet3 == 1 && player.getlevel >= 15
player.removeitem aashadowhelmet3 1
player.additem aashadowhelmet4 1
set helmet4 to 1
endif
if player.getitemcount aashadowhelmet4 == 1 && player.getlevel >= 20
player.removeitem aashadowhelmet4 1
player.additem aashadowhelmet5 1
set helmet to 1
endif
endif
if shield == 0
if shield1 == 0 && player.getitemcount aashadowshield == 1 && player.getlevel >= 2
player.removeitem aashadowshield 1
player.additem aashadowshield1 1
set shield1 to 1
endif
if shield2 == 0 && player.getitemcount aashadowshield1 == 1 && player.getlevel >= 6
player.removeitem aashadowshield1 1
player.additem aashadowshield2 1
set shield2 to 1
endif
if shield3 == 0 && player.getitemcount aashadowshield2 == 1 && player.getlevel >= 10
player.removeitem aashadowshield2 1
player.additem aashadowshield3 1
set shield3 to 1
endif
if shield4 == 0 && player.getitemcount aashadowshield3 == 1 && player.getlevel >= 15
player.removeitem aashadowshield3 1
player.additem aashadowshield4 1
set shield4 to 1
endif
if player.getitemcount aashadowshield4 == 1 && player.getlevel >= 20
player.removeitem aashadowshield4 1
player.additem aashadowshield5 1
set shield to 1
endif
endif
if skirt == 0
if skirt1 == 0 && player.getitemcount aashadowskirt == 1 && player.getlevel >= 2
player.removeitem aashadowskirt 1
player.additem aashadowskirt1 1
set skirt1 to 1
endif
if skirt2 == 0 && player.getitemcount aashadowskirt1 == 1 && player.getlevel >= 6
player.removeitem aashadowskirt1 1
player.additem aashadowskirt2 1
set skirt2 to 1
endif
if skirt3 == 0 && player.getitemcount aashadowskirt2 == 1 && player.getlevel >= 10
player.removeitem aashadowskirt2 1
player.additem aashadowskirt3 1
set skirt3 to 1
endif
if skirt4 == 0 && player.getitemcount aashadowskirt3 == 1 && player.getlevel >= 15
player.removeitem aashadowskirt3 1
player.additem aashadowskirt4 1
set skirt4 to 1
endif
if player.getitemcount aashadowskirt4 == 1 && player.getlevel >= 20
player.removeitem aashadowskirt4 1
player.additem aashadowskirt5 1
set skirt to 1
endif
endif
endif
if boots == 1 && cuirass == 1 && gautlets == 1 && greaves == 1 && helmet == 1 && shield == 1 && skirt == 1
stopquest aashadowruestungLVLquest
endif
if player.getitemcount aashadowgreaves2 == 1 && ruecktausch == 0 && greaves2 == 1 ;des is ne Korrektur für einen schreibfeher im skript der mir erst nacher aufgefallen ist
player.removeitem aashadowgreaves2 1
player.additem aashadowgreaves1 1
set greaves2 to 0
set ruecktausch to 1
endif
end
Deshalb wollt ich mal frage ob mir da jemand nicht eine Möglichkeit sagen kann wie man das "effizienter" gestallten könnte?
Des andere Ist eher unnwichtig, aber würd mir beim modden schon helfen, da ich wenn ich neue rüstungen/waffen ins spiel bring gerne auch so mitleveln lass selbst wenn man sie schon hat (wie des "QuestAwardLeveler"-PI) aber meine Lösung funktioniert zwar toll, aber is mir etwas lang geraten. Bei einem Rüstungsset mit 6 Teilen, von denen es wiederum für die Levels 6 verschiedene Versionen gibt, ist mein Quest-Script schon 261 Zeilen lang:
scn aashadowruestungLVLquestSCRIPT
short boots
short cuirass
short gautlets
short greaves
short helmet
short shield
short skirt
short boots1
short boots2
short boots3
short boots4
short cuirass1
short cuirass2
short cuirass3
short cuirass4
short gautlets1
short gautlets2
short gautlets3
short gautlets4
short greaves1
short greaves2
short greaves3
short greaves4
short helmet1
short helmet2
short helmet3
short helmet4
short shield1
short shield2
short shield3
short shield4
short skirt1
short skirt2
short skirt3
short skirt4
short ruecktausch
begin gamemode
if getstage aashadowruestungLVLquest < 10
return
endif
if getstage aashadowruestungLVLquest == 10
if boots == 0
if boots1 == 0 && player.getitemcount aashadowboots == 1 && player.getlevel >= 2
player.removeitem aashadowboots 1
player.additem aashadowboots1 1
set boots1 to 1
endif
if boots2 == 0 && player.getitemcount aashadowboots1 == 1 && player.getlevel >= 6
player.removeitem aashadowboots1 1
player.additem aashadowboots2 1
set boots1 to 1
endif
if boots3 == 0 && player.getitemcount aashadowboots2 == 1 && player.getlevel >= 10
player.removeitem aashadowboots2 1
player.additem aashadowboots3 1
set boots1 to 1
endif
if boots4 == 0 && player.getitemcount aashadowboots3 == 1 && player.getlevel >= 15
player.removeitem aashadowboots3 1
player.additem aashadowboots4 1
set boots1 to 1
endif
if player.getitemcount aashadowboots4 == 1 && player.getlevel >= 20
player.removeitem aashadowboots4 1
player.additem aashadowboots5 1
set boots to 1
endif
endif
if cuirass == 0
if cuirass1 == 0 && player.getitemcount aashadowcuirass == 1 && player.getlevel >= 2
player.removeitem aashadowcuirass 1
player.additem aashadowcuirass1 1
set cuirass1 to 1
endif
if cuirass2 == 0 && player.getitemcount aashadowcuirass1 == 1 && player.getlevel >= 6
player.removeitem aashadowcuirass1 1
player.additem aashadowcuirass2 1
set cuirass2 to 1
endif
if cuirass3 == 0 && player.getitemcount aashadowcuirass2 == 1 && player.getlevel >= 10
player.removeitem aashadowcuirass2 1
player.additem aashadowcuirass3 1
set cuirass3 to 1
endif
if cuirass4 == 0 && player.getitemcount aashadowcuirass3 == 1 && player.getlevel >= 15
player.removeitem aashadowcuirass3 1
player.additem aashadowcuirass4 1
set cuirass4 to 1
endif
if player.getitemcount aashadowcuirass4 == 1 && player.getlevel >= 20
player.removeitem aashadowcuirass4 1
player.additem aashadowcuirass5 1
set cuirass to 1
endif
endif
if gautlets == 0
if gautlets1 == 0 && player.getitemcount aashadowgautlets == 1 && player.getlevel >= 2
player.removeitem aashadowgautlets 1
player.additem aashadowgautlets1 1
set gautlets1 to 1
endif
if gautlets2 == 0 && player.getitemcount aashadowgautlets1 == 1 && player.getlevel >= 6
player.removeitem aashadowgautlets1 1
player.additem aashadowgautlets2 1
set gautlets2 to 1
endif
if gautlets3 == 0 && player.getitemcount aashadowgautlets2 == 1 && player.getlevel >= 10
player.removeitem aashadowgautlets2 1
player.additem aashadowgautlets3 1
set gautlets3 to 1
endif
if gautlets4 == 0 && player.getitemcount aashadowgautlets3 == 1 && player.getlevel >= 15
player.removeitem aashadowgautlets3 1
player.additem aashadowgautlets4 1
set gautlets4 to 1
endif
if player.getitemcount aashadowgautlets4 == 1 && player.getlevel >= 20
player.removeitem aashadowgautlets4 1
player.additem aashadowgautlets5 1
set gautlets to 1
endif
endif
if greaves == 0
if greaves1 == 0 && player.getitemcount aashadowgreaves == 1 && player.getlevel >= 2
player.removeitem aashadowgreaves 1
player.additem aashadowgreaves1 1
set greaves1 to 1
endif
if greaves2 == 0 && player.getitemcount aashadowgreaves1 == 1 && player.getlevel >= 6
player.removeitem aashadowgreaves1 1
player.additem aashadowgreaves2 1
set greaves2 to 1
endif
if greaves3 == 0 && player.getitemcount aashadowgreaves2 == 1 && player.getlevel >= 10
player.removeitem aashadowgreaves2 1
player.additem aashadowgreaves3 1
set greaves3 to 1
endif
if greaves4 == 0 && player.getitemcount aashadowgreaves3 == 1 && player.getlevel >= 15
player.removeitem aashadowgreaves3 1
player.additem aashadowgreaves4 1
set greaves4 to 1
endif
if player.getitemcount aashadowgreaves4 == 1 && player.getlevel >= 20
player.removeitem aashadowgreaves4 1
player.additem aashadowgreaves5 1
set greaves to 1
endif
endif
if helmet == 0
if helmet1 == 0 && player.getitemcount aashadowhelmet == 1 && player.getlevel >= 2
player.removeitem aashadowhelmet 1
player.additem aashadowhelmet1 1
set helmet1 to 1
endif
if helmet2 == 0 && player.getitemcount aashadowhelmet1 == 1 && player.getlevel >= 6
player.removeitem aashadowhelmet1 1
player.additem aashadowhelmet2 1
set helmet2 to 1
endif
if helmet3 == 0 && player.getitemcount aashadowhelmet2 == 1 && player.getlevel >= 10
player.removeitem aashadowhelmet2 1
player.additem aashadowhelmet3 1
set helmet3 to 1
endif
if helmet4 == 0 && player.getitemcount aashadowhelmet3 == 1 && player.getlevel >= 15
player.removeitem aashadowhelmet3 1
player.additem aashadowhelmet4 1
set helmet4 to 1
endif
if player.getitemcount aashadowhelmet4 == 1 && player.getlevel >= 20
player.removeitem aashadowhelmet4 1
player.additem aashadowhelmet5 1
set helmet to 1
endif
endif
if shield == 0
if shield1 == 0 && player.getitemcount aashadowshield == 1 && player.getlevel >= 2
player.removeitem aashadowshield 1
player.additem aashadowshield1 1
set shield1 to 1
endif
if shield2 == 0 && player.getitemcount aashadowshield1 == 1 && player.getlevel >= 6
player.removeitem aashadowshield1 1
player.additem aashadowshield2 1
set shield2 to 1
endif
if shield3 == 0 && player.getitemcount aashadowshield2 == 1 && player.getlevel >= 10
player.removeitem aashadowshield2 1
player.additem aashadowshield3 1
set shield3 to 1
endif
if shield4 == 0 && player.getitemcount aashadowshield3 == 1 && player.getlevel >= 15
player.removeitem aashadowshield3 1
player.additem aashadowshield4 1
set shield4 to 1
endif
if player.getitemcount aashadowshield4 == 1 && player.getlevel >= 20
player.removeitem aashadowshield4 1
player.additem aashadowshield5 1
set shield to 1
endif
endif
if skirt == 0
if skirt1 == 0 && player.getitemcount aashadowskirt == 1 && player.getlevel >= 2
player.removeitem aashadowskirt 1
player.additem aashadowskirt1 1
set skirt1 to 1
endif
if skirt2 == 0 && player.getitemcount aashadowskirt1 == 1 && player.getlevel >= 6
player.removeitem aashadowskirt1 1
player.additem aashadowskirt2 1
set skirt2 to 1
endif
if skirt3 == 0 && player.getitemcount aashadowskirt2 == 1 && player.getlevel >= 10
player.removeitem aashadowskirt2 1
player.additem aashadowskirt3 1
set skirt3 to 1
endif
if skirt4 == 0 && player.getitemcount aashadowskirt3 == 1 && player.getlevel >= 15
player.removeitem aashadowskirt3 1
player.additem aashadowskirt4 1
set skirt4 to 1
endif
if player.getitemcount aashadowskirt4 == 1 && player.getlevel >= 20
player.removeitem aashadowskirt4 1
player.additem aashadowskirt5 1
set skirt to 1
endif
endif
endif
if boots == 1 && cuirass == 1 && gautlets == 1 && greaves == 1 && helmet == 1 && shield == 1 && skirt == 1
stopquest aashadowruestungLVLquest
endif
if player.getitemcount aashadowgreaves2 == 1 && ruecktausch == 0 && greaves2 == 1 ;des is ne Korrektur für einen schreibfeher im skript der mir erst nacher aufgefallen ist
player.removeitem aashadowgreaves2 1
player.additem aashadowgreaves1 1
set greaves2 to 0
set ruecktausch to 1
endif
end
Deshalb wollt ich mal frage ob mir da jemand nicht eine Möglichkeit sagen kann wie man das "effizienter" gestallten könnte?