Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 13:48

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

Advertisement



Drachenraum(Schriftrolle d. Orts)

Discussion on Drachenraum(Schriftrolle d. Orts) within the Metin2 Private Server forum part of the Metin2 category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jan 2013
Posts: 1,818
Received Thanks: 336
Drachenraum(Schriftrolle d. Orts)

Guten Abend Community,

hat einer Ahnung, warum die Quest es nicht umsetzt, dass man im Drachenraum keine Rollen machen kann... ?

PHP Code:
quest rollenblock begin
       state start begin
        when 22010.
use with pc.get_map_index() == 97 begin
            chat
("Hier kannst du keine Ortsrollen benutzen.")
            
item.remove()
        
end
        end
end 
°Ace° is offline  
Old 01/18/2015, 19:09   #2
 
elite*gold: 81
Join Date: Jan 2015
Posts: 186
Received Thanks: 34
welche map index hat dein drachen raum ? die 97 ?
[TEC]Tigrex is offline  
Old 01/18/2015, 22:15   #3

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Weil die Schriftrollen nicht Type 18 sind und deshalb nicht mit 22010.use genutzt werden können. Machst du sie aber auf Type 18 haben sie die normale Funktion nicht mehr.
rollback is offline  
Old 01/19/2015, 18:02   #4
 
elite*gold: 0
Join Date: Jan 2013
Posts: 1,818
Received Thanks: 336
Quote:
Originally Posted by [Sensenmann] View Post
Weil die Schriftrollen nicht Type 18 sind und deshalb nicht mit 22010.use genutzt werden können. Machst du sie aber auf Type 18 haben sie die normale Funktion nicht mehr.
Das Problem ist wieder rum, dass man die Rollen bei Typ18 gar nicht mehr einsetzen kann.

Quote:
Originally Posted by [TEC]Tigrex View Post
welche map index hat dein drachen raum ? die 97 ?
Richtig
°Ace° is offline  
Old 01/19/2015, 18:49   #5

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Hab ich doch geschrieben
rollback is offline  
Old 01/19/2015, 20:14   #6

 
.yorliK's Avatar
 
elite*gold: 0
Join Date: Nov 2011
Posts: 1,448
Received Thanks: 1,258
Ich wüsste ne Idee, aber die ist eigentlich ziemlich dumm

Da die Funktion von 22010 im Source verankert ist, könnte man ein neues Item mit dem selben Icon erstellen und versuchen die Funktion irgendwie nach zu schreiben.

## Hab das mal gemacht!
.yorliK is offline  
Thanks
2 Users
Old 01/20/2015, 18:21   #7
 
elite*gold: 0
Join Date: Jan 2013
Posts: 1,818
Received Thanks: 336
Quote:
Originally Posted by Kilroy. View Post
Ich wüsste ne Idee, aber die ist eigentlich ziemlich dumm

Da die Funktion von 22010 im Source verankert ist, könnte man ein neues Item mit dem selben Icon erstellen und versuchen die Funktion irgendwie nach zu schreiben.

## Hab das mal gemacht!

Voraussetzung ist, ein neues Item, Type 18.

Öffnet die uitooltip.py in den root-dateien und dann
sucht ihr nach:
Code:
def AddItemData(self, itemVnum, metinSlot, attrSlot = 0, flags = 0, unbindTime = 0):
und nun befolgt die Bilder:


dort fügt ihr das ein:
Code:
		elif 35002 == itemVnum:
			if 0 != metinSlot:
				xPos = int(metinSlot[0])
				yPos = int(metinSlot[1])

				if xPos != 0 and yPos != 0:
					(mapName, xBase, yBase) = background.GlobalPositionToMapInfo(xPos, yPos)

					localeMapName=locale.MINIMAP_ZONE_NAME_DICT.get(mapName, "")

					self.AppendSpace(5)

					if localeMapName!="":
						self.AppendTextLine(locale.TOOLTIP_MEMORIZED_POSITION % (localeMapName, int(xPos-xBase)/100, int(yPos-yBase)/100), self.NORMAL_COLOR)
					else:
						self.AppendTextLine(locale.TOOLTIP_MEMORIZED_POSITION_ERROR % (int(xPos)/100, int(yPos)/100), self.NORMAL_COLOR)
						dbg.TraceError("NOT_EXIST_IN_MINIMAP_ZONE_NAME_DICT: %s" % mapName)
			return
sieht dann so aus:


######

Wenn ihr das habt, diese Quest einfügen, ggf. eure ItemID anpassen und fertig.
Damit die funktioniert, ist es sehr wichtig, das die index-Datei in /usr/home/game/share/locale/germany/map/ folgendes Format hat,

Index[Leerzeichen]MapName!

Bsp:

Code:
1 metin2_map_a1
und wichtig ist auch, das die Setting.txt in dem mapordner, in Zeile 7 folgendes Format hat,

BasePosition[TAB]Koord[TAB]Koord

Bsp:

Code:
BasePosition	819200	204800

So hier die Quest !
Code:
quest warp_scroll begin
	state start begin
		when 35002.use begin

			not_allowed = { 71, 30, 99, 10 } -- Blockt die Rolle in diesen Indexen

			if item.get_socket(0)!=0 and item.get_socket(1)!=0 then
				pc.warp(tonumber(item.get_socket(0)), tonumber(item.get_socket(1)))
				item.remove()
			else
				if table.is_in(not_allowed, pc.get_map_index()) then syschat("Geht hier nicht.") return end
				local txt = warp_scroll.get_txt("/usr/home/game/share/locale/germany/map/index")
				local obj
				for i=1, table.getn(txt), 1 do
					if string.find(txt[i], tostring(pc.get_map_index()))!=nil then
						obj =  split(txt[i], " ")
						break
					end
				end
				for line in io.lines("/usr/home/game/share/locale/germany/map/"..obj[2].."/Setting.txt") do
					if string.find(line, "BasePosition")!=nil then
						obj = split(line, "	")
						break
					end
				end
				item.set_socket(0, tonumber(obj[2])+(pc.get_local_x()*100))
				item.set_socket(1, tonumber(obj[3])+(pc.get_local_y()*100))
			end
		end
		function get_txt(ort)
			local result = {}
			local i = 1
			for line in io.lines( ort ) do
				result[ i ] = line
				i = i + 1
			end
			return result
		end
	end
end
Wie du es nun releast hast, kann man die Schriftrolle nur auf Map1 benutzen ? Oder auch auf allen anderen Maps.. ?
°Ace° is offline  
Old 01/20/2015, 18:38   #8
Trade Restricted
 
elite*gold: 9
Join Date: Jul 2014
Posts: 818
Received Thanks: 677
Oder du machst es anständig:

Öffen im game source deiner Wahl die char_item.cpp und suche nach

PHP Code:
static bool IS_MONKEY_DUNGEON(int map_index
direkt über dieser Deklarierung fügst du folgendes ein:

PHP Code:
static bool IS_DRAGON(int map_index)
{
    switch (
map_index)
    {
        case 
97:
        return 
true;;
    }

    return 
false;

danach suchst du auch in der char_item.cpp nach

PHP Code:
            if (item->GetVnum() == 22010)
            {
                
item->GetSocket(0) - GetX();
                
item->GetSocket(1) - GetY();
            } 
und ersetzt es mit

PHP Code:
            if (item->GetVnum() == 22010)
            {
                if (
IS_DRAGON(map_index))
                return;

                
item->GetSocket(0) - GetX();
                
item->GetSocket(1) - GetY();
            } 
abspeichern, kompilieren und du hast es auch schon.
Danach kann man die Rollen nicht mehr auf dem entsprechenden Map Index nutzen bzw "herstellen".
grαyfox is offline  
Thanks
1 User
Reply

Tags
metin2, quest, schriftrolle


Similar Threads Similar Threads
[Problem] Mit Drachenraum Spawns ( Drachenraum komplett leer )
05/11/2013 - Metin2 Private Server - 3 Replies
Hey Hoo :DD, Und zwar hab ich ein Problem mit dem Drachenraum ! Der Drachenraum funktioniert einwandfrei die Quest sollte eigendlich auch einwandfrei funktionieren ! im Map ordner vom Drachenraum ist die Regen leer weil es ja als Dungeon angesehen wird ! Drachenraum Quest : quest Tempel_of_dragon begin state start begin function drachen_login() rows = mysql_select("SELECT COUNT(id) FROM "..DATABASE..".LOG_Drachentempel_login&q uot;)
sperren Schriftrolle in map
07/14/2012 - Metin2 Private Server - 1 Replies
Schriftrolle wie man in manchen Karten zu sperren?
Schriftrolle des Ortes.
04/13/2011 - Metin2 Private Server - 6 Replies
Hallo, Ich habe ein problem, ich habe eine neue map erstellt. Die ab level 80er ist. Jedoch kann man auf der Map Schriftrolle des Ortes benutzen, weist einer wie man das Entfernt?
[Frage]Schriftrolle
07/13/2010 - Metin2 Private Server - 0 Replies
Hallo E*pvpers, Ich habe eine ein Frage und zwar möchte ich Schriftrolle des Ortes unhandelbar machen :s, aber ich weiß nicht wie das geht, kann mir da jemand helfen? Liebe Grüße



All times are GMT +2. The time now is 13:48.


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.