Ulepszanie przedmiotów u Cromwella
14 July 2008
Comments
Jak zrobić by np. Cromwell ulepszył nam przedmiot? Tutorial dla zaawansowanych z lekka: Załóżmy że mamy 3 kawałki miecza, pliki itm o nazwa: SHARD1, SHARD2 i SHARD3 oraz miecz SHARDSWD który ma powstać z ich złożenia. Robimy sobie jakiś plik *.d i wrzucamy do niego coś takiego:
EXTEND_BOTTOM WSMITH01 13
IF ~OR(3)
PartyHasItem("SHARD1")
PartyHasItem("SHARD2")
PartyHasItem("SHARD3")~ THEN GOTO PartyHasAtLeastOneShard
END
APPEND WSMITH01
IF ~~ THEN BEGIN PartyHasAtLeastOneShard SAY ~Co to, kawałki miecza?~
IF ~PartyHasItem("SHARD1")
PartyHasItem("SHARD2")
PartyHasItem("SHARD3")~ THEN GOTO PartyHasAllParts
IF ~OR(3)
!PartyHasItem("SHARD1")
!PartyHasItem("SHARD2")
!PartyHasItem("SHARD3")~ THEN GOTO PartyDoesNotHaveAllParts
END
IF ~~ THEN BEGIN PartyDoesNotHaveAllParts SAY ~To są fragmenty niezłego miecza, jeżeli będziecie mieć wszystkie będę mógł zrobić z nich miecz.~
IF ~~ THEN GOTO MovingRightAlong
END
IF ~~ THEN BEGIN PartyHasAllParts SAY ~Widzę że macie wszystkie części, mogę zrobić z nich niezły miecz.~
IF ~~ THEN REPLY ~Z czym byłoby to związane?~ GOTO HowMuch
IF ~~ THEN REPLY ~Nie dzięki, może mam coś innego ciekawego?~ GOTO MovingRightAlong
END
IF ~~ THEN BEGIN HowMuch SAY ~Kosztować to będzie 7500.~
IF ~PartyGoldGT(7499)~ THEN DO ~SetGlobal("ForgeItem","GLOBAL",555)
SetGlobal("ForgeStuff","GLOBAL",1)
TakePartyGold(7500)
DestroyGold(7500)~ REPLY ~Tak zróbmy to.~ GOTO 56
IF ~~ THEN REPLY ~Nie dzięki, może mam coś innego ciekawego?~ GOTO MovingRightAlong
END
IF ~~ THEN BEGIN MovingRightAlong SAY ~Zobaczmy co tam masz.~
COPY_TRANS WSMITH01 13
END
END
Następnie zobacz jaki nr AR ma plansza kuźni Cromwella :) I w NearInfinity w skrypcie tego obszaru dodaj:
IF
Global("ForgeItem","GLOBAL",555)
Global("ForgeStuff","GLOBAL",1)
THEN
RESPONSE #100
SetGlobal("ForgeStuff","GLOBAL",0)
TakePartyItem("SHARD1") // kawałki
TakePartyItem("SHARD2")
TakePartyItem("SHARD3")
DestroyItem("SHARD1")
DestroyItem("SHARD2")
DestroyItem("SHARD3")
GiveItemCreate("SHARDSWD",PLAYER1,0,0,0) // zrobiony przedmiot
ActionOverride("wsmith01",StartDialogueNoSet([PC]))
END
Na podstawie tutoriala FWN
RkBlog
Comment article