可以利用某道具 每次執行提升1點強化值 沒有爆的機率 每次都是100%
不喜這功能腳本的人 或許可以把強化道具條件設難一點! 因為是 100%的ˇˇ
測試過可執行啦!
和安定值強化師不同的地方是 我這腳本可以點超過安定值!
安定強化師是點一下直接到安定值! 我是執行一次武器就多+1!
其強化條件是 1個可樂 + 10張祝武! S80為20張祝武! S84為30張祝武!
破滅國境所有新裝 都可以強化!
s84! 包含雙必首! 符印都可以強化! ^^
特別注意事項! 這腳本無視於CONFIG裡的強化上限! 也無視你CONFIG所設的安定值! 也無視你CONFIG所設的白武祝武機率!
判斷完全是依照這腳本上的數值 最多(上限)就是強化到 65535 ! (我是設65535)
強化成功率就是固定100% ! 強化之後 +20變+21 +21變+22 依此類推!
強化所需要條件: (我自已預設的)
D武 D防 : 一個可樂+10張D祝武或祝防
C武 C防 : 一個可樂+10張C祝武或祝防
B武 B防 : 一個可樂+10張B祝武或祝防
A武 A防 : 一個可樂+10張A祝武或祝防
S武 S防 : 一個可樂+10張S祝武或祝防
S80武 S80防 : 一個可樂+20張S祝武或祝防
S84武 S84防 : 一個可樂+30張S祝武或祝防
如果需要設定上限的話! 請將下面腳本! 所有看到65535的地方修改到您要強化的上限值即可!
或是自已宣告個MAX = xxxx <==您要強化的上限值
再將MAX 對應到 65535的地方 會比較方便你們修改
代码: 全选
01.import sys
02.from net.sf.l2j.gameserver.model.quest import State
03.from net.sf.l2j.gameserver.model.quest import QuestState
04.from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest
05.from net.sf.l2j.gameserver.model.base import Experience
06.qn = "5201314_Emily"
07.SmithNpc = 520006 #這裡可以修改你要進行完美強化的NPC編號 我NPC是自訂的 L2裡沒有 520006 這個NPC 請自已修改或自訂
08.QuestId = 5201314
09.QuestDesc = "custom"
10.COLA = 3434 #完美強化時所需要的道具 可以自行在這修改要強化所需的道具編號ID 預設為可樂
11.COLANUMBER = 1 #完美強化時所需要的道具數量 可以自行在這修改要強化所需道具的數量 預設可樂的數量1個
12.MAX = 65535 #提供給玩家的完美強化上限值 可以自行在這修改提供給玩家的強化上限 預設為65535
13.acceptableArmorTypes = ['Light','Heavy','Magic','Shield','Sigil']
14.acceptableWeaponTypes = ['Sword','Blunt','Dagger','Bow','Pole','Etc','Fist','Dual Sword','Dual Fist','Big Sword','Big Blunt','Ancient','Crossbow','Rapier','Dual Dagger']
15.acceptableJewelTypes = ['None']
16.HTMLSTART = "00.htm"
17.HTMLGRATZ = "11.htm"
18.HTMLCHEAT = "22.htm"
19.HTMLNOSOP = "33.htm"
20.class Quest (JQuest) :
21. def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
22. def onEvent (self,event,st) :
23. if event == "YES" :
24. st.playSound("ItemSound.quest_finish")
25. st.giveItems(57,1000)
26. return "YES.htm"
27. if event == "NO" :
28. st.playSound("ItemSound.quest_finish")
29. st.takeItems(57,1000000)
30. st.getPlayer().getStat().removeExpAndSp(0,100000)
31. return "NO.htm"
32. if event == "choose_item_enchant" :
33. st.playSound("ItemSound.quest_accept")
34. htmltext = ""
35. price = ""
36. for Item in st.getPlayer().getInventory().getItems() :
37. itemType = Item.getItem().getItemType().toString()
38. itemGrade = Item.getItem().getCrystalType()
39. itemEnchant = Item.getEnchantLevel()
40. if (itemGrade > 0 and not Item.isEquipped()) :
41. if (itemType in acceptableWeaponTypes and itemEnchant < MAX) or (itemType in acceptableArmorTypes and itemEnchant < MAX) or (itemType in acceptableJewelTypes and itemEnchant < MAX) :
42. if itemType in acceptableArmorTypes or itemType in acceptableJewelTypes :
43. if itemGrade == 1 : #D 防具
44. price = 10 #安全強化+1 祝福武防所需要的數量
45. elif itemGrade == 2 : #C 防具
46. price = 10 #安全強化+1 祝福武防所需要的數量
47. elif itemGrade == 3 : #B 防具
48. price = 10 #安全強化+1 祝福武防所需要的數量
49. elif itemGrade == 4 : #A 防具
50. price = 10 #安全強化+1 祝福武防所需要的數量
51. elif itemGrade == 5 : #S 防具
52. price = 10 #安全強化+1 祝福武防所需要的數量
53. elif itemGrade == 6 : #S80 防具
54. price = 10 * 2 #安全強化+1 祝福武防所需要的數量
55. elif itemGrade == 7 : #S84 防具
56. price = 10 * 3 #安全強化+1 祝福武防所需要的數量
57. elif itemType in acceptableWeaponTypes :
58. if itemGrade == 1 : #D 武器
59. price = 10 #安全強化+1 祝福武防所需要的數量
60. elif itemGrade == 2 : #C 武器
61. price = 10 #安全強化+1 祝福武防所需要的數量
62. elif itemGrade == 3 : #B 武器
63. price = 10 #安全強化+1 祝福武防所需要的數量
64. elif itemGrade == 4 : #A 武器
65. price = 10 #安全強化+1 祝福武防所需要的數量
66. elif itemGrade == 5 : #S 武器
67. price = 10 #安全強化+1 祝福武防所需要的數量
68. elif itemGrade == 6 : #S80 武器
69. price = 10 * 2 #安全強化+1 祝福武防所需要的數量
70. elif itemGrade == 7 : #S84 武器
71. price = 10 * 3 #安全強化+1 祝福武防所需要的數量
72. htmltext += "<a action=\"bypass -h Quest 5201314_Emily enchantItem_" + str(Item.getObjectId()) +"\">" + "我要將 +" + str(Item.getEnchantLevel()) + " " + Item.getItem().getName() + " 100% 完美強化<br1> ( 請給我 " + str(COLANUMBER) + " 個<font color=\"FFFF00\">可口可樂</font>及 "+ str(price) + " 張同等的<font color=\"FFFF00\">祝福武防</font>卷 )</a><br1>"
73. if htmltext == "" :
74. htmltext = "<html><title>綜合管理員</title><body><br><br><br>謎之聲:<br>您的身上道具欄內已經沒有可以強化的物品了</body></html>"
75. htmltext = "<html><title>綜合管理員</title><body><br><br><img src=\"L2UI.SquareBlank\" width=293 height=0><br>請您在下列挑選一件想強化的物品唷!<br><br><br><br>" + htmltext + "</body></html>"
76. elif event.startswith("enchantItem_") :
77. amount = ""
78. objId = int(event.replace("enchantItem_", ""))
79. Item = st.getPlayer().getInventory().getItemByObjectId(objId)
80. if Item and not Item.isEquipped() :
81. itemType = Item.getItem().getItemType().toString()
82. itemGrade = Item.getItem().getCrystalType()
83. itemEnchant = Item.getEnchantLevel()
84. if itemGrade > 0 :
85. if (itemType in acceptableWeaponTypes and itemEnchant < MAX) or (itemType in acceptableArmorTypes and itemEnchant < MAX) or (itemType in acceptableJewelTypes and itemEnchant < MAX) :
86. if itemType in acceptableArmorTypes or itemType in acceptableJewelTypes :
87. if itemGrade == 1 : #D 防具
88. Scroll = 6576 #祝福的防具強化卷軸-D級
89. price = 10 #安全強化+1 祝福武防所需要的數量
90. elif itemGrade == 2 : #C 防具
91. Scroll = 6574 #祝福的防具強化卷軸-C級
92. price = 10 #安全強化+1 祝福武防所需要的數量
93. elif itemGrade == 3 : #B 防具
94. Scroll = 6572 #祝福的防具強化卷軸-B級
95. price = 10 #安全強化+1 祝福武防所需要的數量
96. elif itemGrade == 4 : #A 防具
97. Scroll = 6570 #祝福的防具強化卷軸-A級
98. price = 10 #安全強化+1 祝福武防所需要的數量
99. elif itemGrade == 5 : #S 防具
100. Scroll = 6578 #祝福的防具強化卷軸-S級
101. price = 10 #安全強化+1 祝福武防所需要的數量
102. elif itemGrade == 6 : #S80 防具
103. Scroll = 6578 #祝福的防具強化卷軸-S級
104. price = 10 * 2 #安全強化+1 祝福武防所需要的數量
105. elif itemGrade == 7 : #S84 防具
106. Scroll = 6578 #祝福的防具強化卷軸-S級
107. price = 10 * 3 #安全強化+1 祝福武防所需要的數量
108. elif itemType in acceptableWeaponTypes :
109. if itemGrade == 1 : #D 武器
110. Scroll = 6575 #祝福的武器強化卷軸-D級
111. price = 10 #安全強化+1 祝福武防所需要的數量
112. elif itemGrade == 2 : #C 武器
113. Scroll = 6573 #祝福的武器強化卷軸-C級
114. price = 10 #安全強化+1 祝福武防所需要的數量
115. elif itemGrade == 3 : #B 武器
116. Scroll = 6571 #祝福的武器強化卷軸-B級
117. price = 10 #安全強化+1 祝福武防所需要的數量
118. elif itemGrade == 4 : #A 武器
119. Scroll = 6569 #祝福的武器強化卷軸-A級
120. price = 10 #安全強化+1 祝福武防所需要的數量
121. elif itemGrade == 5 : #S 武器
122. Scroll = 6577 #祝福的武器強化卷軸-S級
123. price = 10 #安全強化+1 祝福武防所需要的數量
124. elif itemGrade == 6 : #S80 武器
125. Scroll = 6577 #祝福的武器強化卷軸-S級
126. price = 10 * 2 #安全強化+1 祝福武防所需要的數量
127. elif itemGrade == 7 : #S84 武器
128. Scroll = 6577 #祝福的武器強化卷軸-S級
129. price = 10 * 3 #安全強化+1 祝福武防所需要的數量
130. if st.getQuestItemsCount(Scroll) >= price and st.getQuestItemsCount(COLA) >= COLANUMBER :
131. Item.setEnchantLevel(itemEnchant + 1)
132. st.takeItems(Scroll,price)
133. st.playSound("ItemSound.quest_finish")
134. st.takeItems(COLA,COLANUMBER)
135. htmltext = HTMLGRATZ
136. else :
137. htmltext = HTMLNOSOP
138. else :
139. htmltext = HTMLCHEAT
140. else :
141. htmltext = HTMLCHEAT
142. else :
143. htmltext = HTMLCHEAT
144. return htmltext
145. def onTalk (self,npc,player) :
146. htmltext = "<html><title>綜合管理員</title><body><br><br><br>謎之聲:<br>您找錯人了唷!</body></html>"
147. st = player.getQuestState(qn)
148. if not st : return htmltext
149. npcId = npc.getNpcId()
150. if npcId == SmithNpc :
151. htmltext = HTMLSTART
152. return htmltext
153.QUEST = Quest(QuestId,qn,QuestDesc)
154.QUEST.addStartNpc(SmithNpc)
155.QUEST.addTalkId(SmithNpc)
itemEnchant 指的是 取得玩家裝備已經+到多少的資料
Item.setEnchantLevel(itemEnchant + 1) 整句的意思就是取得玩家的強化數值之後 再+1
-----------------------------------------------------------------------------------------------------------------------------------
if event == "YES" :
st.playSound("ItemSound.quest_finish")
st.giveItems(57,1000)
return "YES.htm"
if event == "NO" :
st.playSound("ItemSound.quest_finish")
st.takeItems(57,1000000)
st.getPlayer().getStat().removeExpAndSp(0,100000)
return "NO.htm"
這一段的htm是可以不寫的
我寫的 yes (繼續強化)會回饋給玩家 1000金幣! no (結束強化)會倒扣金幣與sp...所以用不到的人...可以刪掉...
我想自己寫htm應該沒問題吧0.0
這腳本改至安定強化師爆爆王
不會寫的可以參考安定強化師的htm來寫