Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 14:54

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Sellenstein quest ohne zeit

Discussion on Sellenstein quest ohne zeit within the Metin2 Private Server forum part of the Metin2 category.

Reply
 
Old   #1
 
Xaphieron's Avatar
 
elite*gold: 0
Join Date: Nov 2012
Posts: 89
Received Thanks: 14
Sellenstein quest ohne zeit

Hallo meine freunde k鰊nte vlt jeman f黵 mich die quest so schreiben
das beim sellenstein lessen keine zeit ist

ich meine zb das man keine zeit braucht um noch eine zu lessen

Code:
quest training_grandmaster_skill begin
state start begin
when 50513.use begin
say_title ( "Seelenstein" )
if pc . get_skill_group ( ) == 0 then
say ( "⊿Τヴ戮穨." .. pc . get_skill_group ( ) )
return
end
if get_time ( ) < pc . getqf ( "next_time" ) then
if pc . is_skill_book_no_delay ( ) then
say ( "Hiermit kannst du eine" )
say ( "Fertigkeit perfektionieren." )
say ( "" )
wait ( )
say_title ( "Seelenstein" )
else
say ( "Du kannst erst morgen wieder" )
say ( "einen Seelenstein nutzen!" )
return
end
end
local result = training_grandmaster_skill . BuildGrandMasterSkillList ( pc . get_job ( ) , pc . get_skill_group ( ) )
local vnum_list = result [ 1 ]
local name_list = result [ 2 ]
if table . getn ( vnum_list ) == 0 then
say ( "Deine Fertigkeiten sind bereits perfekt!" )
return
end
say ( "W鋒le eine Fertigkeit aus." )
say ( "" )
local menu_list = { }
table . foreach ( name_list , function ( i , name ) table . insert ( menu_list , name ) end )
table . insert ( menu_list , "Abbrechen" )
local s = select_table ( menu_list )
if table . getn ( menu_list ) == s then
return
end
local skill_name = name_list [ s ]
local skill_vnum = vnum_list [ s ]
local skill_level = pc . get_skill_level ( skill_vnum )
local cur_alignment = pc . get_real_alignment ( )
local need_alignment = 1000 + 500 * ( skill_level - 30 )
test_chat ( "瞷到碿: " .. cur_alignment )
test_chat ( "Ben鰐igte Rangpunkte: " .. need_alignment )
local title = string . format ( "Fertigkeit perfektionieren:" , skill_name , skill_level - 30 + 1 )
say_title ( title )
say ( "Beim lesen des Seelensteins" )
say ( "verlierst du Rangpunkte! " )
say ( "" )
if cur_alignment < - 19000 + need_alignment then
say_reward ( "Leider hast du nicht gen黦end Rangpunkte " )
return
end
if cur_alignment < 0 then
say_reward ( string . format ( "Ben鰐igte Rangpunkte: %d -> %d" , need_alignment , need_alignment * 2 ) )
need_alignment = need_alignment * 2
elseif cur_alignment < need_alignment then
say_reward ( string . format ( "Ben鰐igte Rangpunkte: %d" , need_alignment ) )
else
say_reward ( string . format ( "Ben鰐igte Rangpunkte: %d" , need_alignment ) )
end
say ( "" )
local s = select ( "Weiter" , "Abbrechen" )
if s == 2 then
return
end
if cur_alignment >= 0 and cur_alignment < need_alignment then
say_title ( string . format ( "Fertigkeit perfektionieren:" , title ) )
say ( "Es ist soweit!" )
say ( "Um zu trainieren," )
say ( "gib bitte ein: Trainieren" )
local s = input ( )
if s ~= "Trainieren" then
return
end
end
if get_time ( ) < pc . getqf ( "next_time" ) then
if pc . is_skill_book_no_delay ( ) then
pc . remove_skill_book_no_delay ( )
else
say ( "[蔼单]мm岿粇: ヰい" )
return
end
end
pc . setqf ( "next_time" , get_time ( ) + time_hour_to_sec ( number ( 8 , 12 ) ) )
if need_alignment > 0 then
if pc . learn_grand_master_skill ( skill_vnum ) then
pc . change_alignment ( - need_alignment )
say_title ( string . format ( "%s Erfolgreich!" , title ) )
if 40 == pc . get_skill_level ( skill_vnum ) then
say ( string . format ( "Herzlichen gl點kwunsch! =)" , skill_name ) )
else
say ( string . format ( "[蔼单]m %s琌 %d 单." , skill_name , skill_level - 30 + 1 + 1 ) )
end
say ( "" )
say_reward ( "Perfektionieren erfolgreich!" )
say_reward ( string . format ( "Rangpunkte verloren: %d " , need_alignment ) )
say ( "" )
else
say_title ( string . format ( "%s Fehlgeschlagen!" , title ) )
say ( "Pech gehabt " )
say ( "" )
say_reward ( "Perfektionieren fehlgeschlagen!" )
say ( "" )
pc . change_alignment ( - number ( need_alignment / 3 , need_alignment / 2 ) )
end
end
item . remove ( )
end
function BuildGrandMasterSkillList(job, group)
GRAND_MASTER_SKILL_LEVEL = 30
PERFECT_MASTER_SKILL_LEVEL = 40

local skill_list = special.active_skill_list[job+1][group]
local ret_vnum_list = {}
local ret_name_list = {}

-- test_chat(string.format("job=%d, group=%d", job, group))

table.foreach(skill_list,
function(i, skill_vnum)
local skill_level = pc.get_skill_level(skill_vnum)

-- test_chat(string.format("[%d]=%d", skill_vnum, skill_level))
if skill_level >= GRAND_MASTER_SKILL_LEVEL and skill_level < PERFECT_MASTER_SKILL_LEVEL then

table.insert(ret_vnum_list, skill_vnum)
local name=locale.GM_SKILL_NAME_DICT[skill_vnum]
if name == nil then name=skill_vnum end
table.insert(ret_name_list, name)
end
end)
return {ret_vnum_list, ret_name_list}


--return {ret_vnum_list, ret_name_list}
end
end
end
hier die quest ich w黵de mich tierig freuen

rechtschreibfehler k鰊nt ihr behalten
Xaphieron is offline  
Old 10/30/2013, 10:31   #2
 
.Inya's Avatar
 
elite*gold: 50
Join Date: Mar 2013
Posts: 2,401
Received Thanks: 1,613
PHP Code:
quest training_grandmaster_skill begin
state start begin
when 50513.
use begin
say_title 
"Seelenstein" )
if 
pc get_skill_group ( ) == 0 then
say 
"⊿Τヴ戮穨." .. pc get_skill_group ( ) )
return
end
if get_time ( ) < pc getqf "next_time" then
if pc is_skill_book_no_delay ( ) or 1==1 then
say 
"Hiermit kannst du eine" )
say "Fertigkeit perfektionieren." )
say "" )
wait ( )
say_title "Seelenstein" )
else
say "Du kannst erst morgen wieder" )
say "einen Seelenstein nutzen!" )
return
end
end
local result 
training_grandmaster_skill BuildGrandMasterSkillList pc get_job ( ) , pc get_skill_group ( ) )
local vnum_list result ]
local name_list result ]
if 
table getn vnum_list ) == 0 then
say 
"Deine Fertigkeiten sind bereits perfekt!" )
return
end
say 
"W鋒le eine Fertigkeit aus." )
say "" )
local menu_list = { }
table . foreach ( name_list , function ( name table insert menu_list name end )
table insert menu_list "Abbrechen" )
local s select_table menu_list )
if 
table getn menu_list ) == s then
return
end
local skill_name 
name_list ]
local skill_vnum vnum_list ]
local skill_level pc get_skill_level skill_vnum )
local cur_alignment pc get_real_alignment ( )
local need_alignment 1000 500 * ( skill_level 30 )
test_chat "瞷到碿: " .. cur_alignment )
test_chat "Ben鰐igte Rangpunkte: " .. need_alignment )
local title string format "Fertigkeit perfektionieren:" skill_name skill_level 30 )
say_title title )
say "Beim lesen des Seelensteins" )
say "verlierst du Rangpunkte! " )
say "" )
if 
cur_alignment < - 19000 need_alignment then
say_reward 
"Leider hast du nicht gen黦end Rangpunkte " )
return
end
if cur_alignment 0 then
say_reward 
string format "Ben鰐igte Rangpunkte: %d -> %d" need_alignment need_alignment ) )
need_alignment need_alignment 2
elseif cur_alignment need_alignment then
say_reward 
string format "Ben鰐igte Rangpunkte: %d" need_alignment ) )
else
say_reward string format "Ben鰐igte Rangpunkte: %d" need_alignment ) )
end
say 
"" )
local s select "Weiter" "Abbrechen" )
if 
== 2 then
return
end
if cur_alignment >= and cur_alignment need_alignment then
say_title 
string format "Fertigkeit perfektionieren:" title ) )
say "Es ist soweit!" )
say "Um zu trainieren," )
say "gib bitte ein: Trainieren" )
local s input ( )
if 
~= "Trainieren" then
return
end
end
if get_time ( ) < pc getqf "next_time" then
if pc is_skill_book_no_delay ( ) then
pc 
remove_skill_book_no_delay ( )
else
say "[蔼单]мm岿粇: ヰい" )
return
end
end
pc 
setqf "next_time" get_time ( ) + time_hour_to_sec number 12 ) ) )
if 
need_alignment 0 then
if pc learn_grand_master_skill skill_vnum then
pc 
change_alignment ( - need_alignment )
say_title string format "%s Erfolgreich!" title ) )
if 
40 == pc get_skill_level skill_vnum then
say 
string format "Herzlichen gl點kwunsch! =)" skill_name ) )
else
say string format "[蔼单]m %s琌 %d 单." skill_name skill_level 30 ) )
end
say 
"" )
say_reward "Perfektionieren erfolgreich!" )
say_reward string format "Rangpunkte verloren: %d " need_alignment ) )
say "" )
else
say_title string format "%s Fehlgeschlagen!" title ) )
say "Pech gehabt " )
say "" )
say_reward "Perfektionieren fehlgeschlagen!" )
say "" )
pc change_alignment ( - number need_alignment need_alignment ) )
end
end
item 
remove ( )
end
function BuildGrandMasterSkillList(jobgroup)
GRAND_MASTER_SKILL_LEVEL 30
PERFECT_MASTER_SKILL_LEVEL 
40

local skill_list 
special.active_skill_list[job+1][group]
local ret_vnum_list = {}
local ret_name_list = {}

-- 
test_chat(string.format("job=%d, group=%d"jobgroup))

table.foreach(skill_list,
function(
iskill_vnum)
local skill_level pc.get_skill_level(skill_vnum)

-- 
test_chat(string.format("[%d]=%d"skill_vnumskill_level))
if 
skill_level >= GRAND_MASTER_SKILL_LEVEL and skill_level PERFECT_MASTER_SKILL_LEVEL then

table
.insert(ret_vnum_listskill_vnum)
local name=locale.GM_SKILL_NAME_DICT[skill_vnum]
if 
name == nil then name=skill_vnum end
table
.insert(ret_name_listname)
end
end
)
return {
ret_vnum_listret_name_list}


--return {
ret_vnum_listret_name_list}
end
end
end 
ist ein wenig dreckig gefixt sollte aber die wartezeit aushebeln indem er dich immer durch die if abfrage l鋝st
.Inya is offline  
Thanks
1 User
Old 10/30/2013, 11:29   #3
 
elite*gold: 0
Join Date: Oct 2013
Posts: 239
Received Thanks: 70
Nimm die IF-ElSE-Abfrage einfach raus, ich helf Dir mal:

Quote:
if get_time ( ) < pc . getqf ( "next_time" ) then
Ab da f鋘gst Du an zu gucken was dort steht und was Du brauchst. Mit einfachen Schulenglischkenntnissen und etwas Logik findet man von ganz alleine raus, was dort steht und wie das in etwa funktioniert.

Und das w鋜e am Ende auch definitiv perfomancefreundlicher, als eine IF-Abfrage zu behalten, die man gar nicht braucht. So wie Du es im Code des Vorposters tun w黵dest.


Gib einem hungrigem einen Fisch und er hat zu Essen. Bring einem Hungrigem bei zu fischen und er wird nie wieder hungrig sein. :-D
Du f鋒rst am Ende besser damit, wenn Du das lernst. Du brauchst dann auch nicht immer auf die Hilfe anderer angewiesen sein.
ihrnervt is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
Compile all quest without quest's files list // Kompilieren Sie alle Quest ohne Quest
07/17/2011 - Metin2 PServer Guides & Strategies - 3 Replies
ENGLISH Hello dear community, this is a very simple guide but at the same time useful. How to compile ALL quest in the folder "quest" without the files list in the file "locale_list"? Easy! Open the file "make" and replace the content of the file with this: for f in *.quest; do ./qc $f; done Oki. Now set the 0777 permission to the file. Finally open a SSH client and sign in. Write the command: cd /game_file_folder



All times are GMT +1. The time now is 14:54.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.