Jump to content

Recommended Posts

Hello, i have a problem with quest....

 

example my quest:

quest test begin
	state start begin
		when 1231.chat."test" with pc.getqf("test") == 0 begin
			pc.setqf("test",1)
		end
	end
end

when you change character etc 

and you have this on database "test" == 1

but in game you still see chat "test"

  • Love 1
3 minuty temu, Shogun napisał:

It's cached, if you want to change it on the database, you will have to log off the character first, and possibly wait some minutes as well. Or restart the server.

you wrong understand me...

1.click on test chat-> it send to database "test" value 1.

and dissapear chat."test"

but if you change character or logout or server restart it will be always showed because allways pc.getqf("test") will return null (0) but on database you have 1

21 minut temu, metin2team napisał:

check your syserr/syslog because it has something to do with your player.quest table either crashed or corrupted.

sysser is clean

 

syslog when i click on npc i got this

 

Oct 25 11:28:52 :: OnClick Stable Man[vnum 20349 ServerUniqueID 14621, pid 0] by Tester

 

maybe mainline_released have bug with this function in source?

 

i can without problem use it 

if pc.getqf("test") == 0 then

--todo

elseif pc.getqf("test") == 1 then

--todo

end

but i can't use it here:

when 1231.chat."test" with pc.getqf("test") == 0 begin

because always return null

 

i think i can fix syslog return pid 0

by change this:

sys_log(0, "OnClick %s[vnum %d ServerUniqueID %d, pid %d] by %s", GetName(), GetRaceNum(), vid, GetPlayerID(), pkChrCauser->GetName());

change to this:

sys_log(0, "OnClick %s[vnum %d ServerUniqueID %d, pid %d] by %s", GetName(), GetRaceNum(), vid, ch->GetPlayerID(), pkChrCauser->GetName());

but this is nothing to quest function.

Acum 8 ore, Traceur3RUN a spus:

Hello, i have a problem with quest....

 

example my quest:


quest test begin
	state start begin
		when 1231.chat."test" with pc.getqf("test") == 0 begin
			pc.setqf("test",1)
		end
	end
end

when you change character etc 

and you have this on database "test" == 1

but in game you still see chat "test"

Even if you use q.done() in your quest?

I mean: 

quest test begin
	state start begin
		when 1231.chat."test" with pc.getqf("test") == 0 begin
			pc.setqf("test",1)
			q.done()
		end
	end
end

 

13 godzin temu, [RaffaeL] napisał:

Even if you use q.done() in your quest?

I mean: 


quest test begin
	state start begin
		when 1231.chat."test" with pc.getqf("test") == 0 begin
			pc.setqf("test",1)
			q.done()
		end
	end
end

 

yes, still the same problem.

Isn't possible to do
 

quest test begin
	state start begin
		if pc.getqf("test") == 0
			when 1231.chat."test" begin
				pc.setqf("test",1)
				q.done()
			end
		end
	end
end

 

Might not work, never tried

It's all lies

  • 4 years later...

I had this problem as well but it work for me when you put pc.getqf("") in if.
when xxx.chat."xx" with pc.getqf("xx") == 1 begin   - this works once, when you escape and try to chat again it will disappear but in data you still have flag xx ==1

when xxx.chat."xx" begin   ----this work all the time for me, 
    if pc.getqf("xx") == 1 then
else
end

 

maybe something is wrong when you put quest flag check with "when" and it stop reading it.

Don't use any images from : imgur, turkmmop, freakgamers, inforge, hizliresim... Or your content will be deleted without notice...
Use : https://metin2.download/media/add/

Please use https://metin2.download/ when uploading files smaller than 100MB, otherwise the approval will take longer due to manual upload.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.