Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Pyatnie] Python


Rekomendowane odpowiedzi

Opublikowano

Moje pytanie brzmi. O co chodzi w Metinowym pythonie z czymś takim

 

def __wywolanie(self).
 

 

Na cholerę jest to self tam ? ktoś może mnie oświecić ?

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

Opublikowano

Czyli jeśli chcemy by funkcja zawierała wyświetlenie tekstu to w tym przypadku self przyjmuje wartość modułu chat.

 

def wywołanie(self):

chat.AppendChat(1, 'Tekst')

Opublikowano

Ok. Dzięki wam, Ale jak widzę eto tam często są inne wpisy nie tylko self np. filename one się odnoszą w ten sam sposób /

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

Opublikowano


def __Load_LoadScript(self, fileName):

try:

pyScriptLoader = ui.PythonScriptLoader()

pyScriptLoader.LoadScriptFile(self, fileName)

 

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

Opublikowano

OK. Dzięki wielkie. Ostatnie pytanie. Żeby zrobić np. weźmy GUI do wieży demonów z tym czasem ilością mobów itd. Trzeba napisać tablice(obiekt) w uiscript a następnie napisać kolejny plik tym razem opisujący wszystkie funkcje okienka. Jak one ze sobą współpracują, tzn. Jak wywołać takie okienko zapisane w uiscript ?

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

Opublikowano

Ładujesz skrypt funkcją, którą wkleiłeś zresztą post wyżej.

Trzeba napisać tablice(obiekt)

tablica to nie to samo co obiekt. poucz się pythona, później się weź za pisanie :P


 

Opublikowano

Najpierw tworzysz to okienko(znajduje się ono w funkcji). Czyli ustalasz jego wysokość, szerokość itp. Załóżmy, ze funkcja nazywa się ZaladujOkno:

 

def ZaladujOkno(self):
blabla(pozycja)
bleble(szerokosc)
clecle(rodzaj)(itd.)

 

Teraz chcesz by okno pokazało się po naciśnięciu na button(hipotetycznie).

Tworzymy button w podobny sposób jak okno, a w linijce gdzie ustalamy co button ma robić wpisujemy

self.ZaladujOkno()  

Podsumowując:

Funkcję w pythonie(metinowskim) wywołujesz poprzedzając wcześniej słowem 'self'(po to między innymi jest self w nawiasie) i pisząc nazwę funkcji.

Opublikowano

@UP

Gość spytał jak wywołać plik skryptowy z gui, a nie funkcję. Swoją drogą, nie każdą funkcję wywołujemy poprzedzając ją self.

Robimy to tylko w przypadku, kiedy funkcja leży w tej samej klasie co wywołanie.


 

Opublikowano

Źle mnie zrozumiałość, albo to ja jestm tępy i Ciebie źle rozumiem. Mam zapisane okienko w uiscript np. ui.okno.py (moje okienko) i jak je teraz wywołać za pomocą cmdchatu w quście? Wiem, że muszę stworzyć wywołanie w game.py ale jak już piszę

 

def __wywolanie(self):
 

 

to co tam napisać aby pokazało mi się to okienko ?

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

Opublikowano

To zależy w jakiej formie masz tą formę gui napisaną. jeżeli coś a`la

import uiScriptLocale

 

window = {

"name" : "SafeboxWindow",

 

"x" : 100,

"y" : 20,

 

"style" : ("movable", "float",),

 

"width" : 176,

"height" : 327,

 

"children" :

(

{

itd., to sposób napisałem wyżej. Natomiast jeśli gui napisałeś w `normalnym` pythonie,to wystarczy stworzenie obiektu klasy, a następnie jej wywołanie (wywołanie konstruktora __init__). Anyway, serio, bez nauki pythona tego nie ogarniesz, poczytaj tutoriale, popatrz na istniejące skrypty.


 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...