Items Stapelbar machen

03/18/2023 20:54 xxpenzuxx#16
Quote:
Originally Posted by xTryx View Post
Wenn du Notepad++ nutzt, es gibt oben einen Button der sieht aus wie ein gespiegeltes P. Wenn du auf diesen klickst kannst du deine TABs sehen.
Ein TAB wird durch einen Pfeil nach rechts dargestellt.
Super Tipp! Warum auch immer hat Notepadd++ rotz TAB drücken Leerschritte eingebaut?? Naja egal, jedoch dennoch ein weiterer Fehler den ich nun gar nicht mehr nachvollziehen kann:
Quote:
networkModule.SetSelectCharacterPhase - exceptions.SyntaxError:invalid syntax (line 788)
788 ist nur "else:" und ich weiß nicht was hier falsch sein soll....

Hier mein Code:
Quote:
773 elif item.GetUseType(srcItemVID) in self.USE_TYPE_TUPLE:
774 self.__SendUseItemToItemPacket(srcItemSlotPos, dstItemSlotPos)
775
776 else:
777 #snd.PlaySound("sound/ui/drop.wav")
778
779 ## 이동시킨 곳이 장착 슬롯일 경우 아이템을 사용해서 장착 시킨다 - [levites]
780 if player.GetItemIndex(srcItemSlotPos) == player.GetItemIndex(dstItemSlotPos):
781 self.__SendMoveItemPacket(srcItemSlotPos, dstItemSlotPos, 0)
782 else:
783 self.__SendUseItemToItemPacket(srcItemSlotPos, dstItemSlotPos)
784
785 ## 들고 있는 아이템이 장비일때만
786 if item.IsEquipmentVID(srcItemVID):
787 self.__UseItem(srcItemSlotPos)
788 else:
789 self.__SendMoveItemPacket(srcItemSlotPos, dstItemSlotPos, 0)
790 #net.SendItemMovePacket(srcItemSlotPos, dstItemSlotPos, 0)
03/18/2023 21:12 xTryx#17
Quote:
Originally Posted by xxpenzuxx View Post
Super Tipp! Warum auch immer hat Notepadd++ rotz TAB drücken Leerschritte eingebaut?? Naja egal, jedoch dennoch ein weiterer Fehler den ich nun gar nicht mehr nachvollziehen kann:


788 ist nur "else:" und ich weiß nicht was hier falsch sein soll....

Hier mein Code:
Die Zeile 775 hat vermutlich einen Abstand. Versuch mal die Zeile 776 um eine Zeile nach oben zu schieben. Ansonsten sollte es passen.
03/18/2023 21:29 xxpenzuxx#18
Quote:
Originally Posted by xTryx View Post
Wenn du Notepad++ nutzt, es gibt oben einen Button der sieht aus wie ein gespiegeltes P. Wenn du auf diesen klickst kannst du deine TABs sehen.
Ein TAB wird durch einen Pfeil nach rechts dargestellt.
Es waren einige Abstände die ich entfernen musste, danach kein Absturz mehr! Fettes THX!

Leider sind die Segis immer noch nur dann stapelbar, wenn ich sie fallen lasse
:(
03/18/2023 22:50 xTryx#19
Quote:
Originally Posted by xxpenzuxx View Post
Es waren einige Abstände die ich entfernen musste, danach kein Absturz mehr! Fettes THX!

Leider sind die Segis immer noch nur dann stapelbar, wenn ich sie fallen lasse
:(
Du musst die item proto packen für den Client und auch beim Server anpassen.
03/19/2023 11:19 xxpenzuxx#20
Quote:
Originally Posted by xTryx View Post
Du musst die item proto packen für den Client und auch beim Server anpassen.
Ist bereits Serversite und clientside angepasst (ITEM_STACKABLE)
03/19/2023 12:01 xTryx#21
Quote:
Originally Posted by xxpenzuxx View Post
Ist bereits Serversite und clientside angepasst (ITEM_STACKABLE)
Wenn du mit einer Segi über einer anderen Segi drüber hoverst, wird der Hintergrund dann Gelb oder Rot?
03/19/2023 12:18 xxpenzuxx#22
Quote:
Originally Posted by xTryx View Post
Wenn du mit einer Segi über einer anderen Segi drüber hoverst, wird der Hintergrund dann Gelb oder Rot?
Der Hintergrund wird rot.
03/19/2023 13:00 xTryx#23
Quote:
Originally Posted by xxpenzuxx View Post
Der Hintergrund wird rot.
Es können verschiedene Gründe schuld sein, warum es nicht geht.
Wenn du ein Item auf ein anderes Item drauf ziehst, sendest du ein Packet zum Server und dieser verarbeitet es dann. Es könnte sein das es garnicht soweit kommt, und der Client das Packet erst garnicht weg schickt oder es wird weg geschickt und der Server lässt die Segis nicht stacken.
Was genau das Problem ist, kann man nicht einfach so feststellen. Da musst du im Source nachschauen.
03/19/2023 19:17 xxpenzuxx#24
Quote:
Originally Posted by xTryx View Post
Es können verschiedene Gründe schuld sein, warum es nicht geht.
Wenn du ein Item auf ein anderes Item drauf ziehst, sendest du ein Packet zum Server und dieser verarbeitet es dann. Es könnte sein das es garnicht soweit kommt, und der Client das Packet erst garnicht weg schickt oder es wird weg geschickt und der Server lässt die Segis nicht stacken.
Was genau das Problem ist, kann man nicht einfach so feststellen. Da musst du im Source nachschauen.
Kannst du mir genau sagen, welchen Ordner Source du meinst also mit Pfad und nach was ich genau darin suchen muss? :)
03/19/2023 19:41 xTryx#25
Quote:
Originally Posted by xxpenzuxx View Post
Kannst du mir genau sagen, welchen Ordner Source du meinst also mit Pfad und nach was ich genau darin suchen muss? :)
Du callst in python diese Function :

Code:
self.__SendMoveItemPacket(srcItemSlotPos, dstItemSlotPos, 0)
Nun schaust du im Clientsource nach, welches Packet das ist.
Wenn du es gefunden hast, öffnest du den Serversource und suchst in dem file inputmain.cpp das Packet.
Bei der Funktion wo das Packet ankommt, lässt du einen String ausgeben und compilest den Serversource.
Wenn der source compiled ist, ziehst du wieder die segi auf eine andere segi drauf und achtest ob der string ausgegeben wird.
Wenn der string ausgegeben wird dann ist es ein Serverproblem wenn nicht dann liegts am Client.
Du könntest auch anstatt dem String, einen Breakpoint setzen.