|
Thema |
Forum |
Letzter Beitrag |
Beiträge |
Zugriffe |
 |
Form bei einer .dll?
Erstellt am: Mo 30. Mai 2011, 15:54
RyTech
Vorschau
Go To Post
Ich arbeite zurzeit an einer art Gui menü, ich machs mit Boxne die ich zeichnen lasse und halt dann abfrage ob die Maus sich auf der Box befindet und man einen Mausklick ausübt. Was nach ner zeit echt nervig wird 100te von Boxen zu machen für paar funktionen. Meine Frage nun, ist es eigendlich möglich eine Windows Form in einer .dll einzufügen die halt mit F12 geöffnet und geschlossen wird? Ich denke nicht das Coder wie bei x22 oder dem OldSchoolHack Injected z.b immer ne Box zeichnet und abfragen ob die Maus drauf ist, währe doch bei vielen Funktionen echt nervig. greetz.
|
VB, C/C++, Delphi, etc |
Di 31. Mai 2011, 12:58
von RyTech
|
10 |
720 |
 |
Form bei einer .dll?
Erstellt am: Mo 30. Mai 2011, 15:54
RyTech
Vorschau
Go To Post
CPP Code: typedef void (*OnClick)(); class cButton { public: cButton(int x, int y, bool checked, char *text, OnClick click); ~cButton(void); int X; int Y; bool Checked; OnClick Clicked; }; cButton::cButton(int x, int y, bool checked, char *text, OnClick click) { X = x; Y = y; Checked = checked; Clicked = click; text; }
soweit bin ich nun, jedoch verstehe ich nicht wie ich diese Instanzen machen soll? also das der nun erkennt ob ich nun den Button 1 oder Button 2 gedrückt habe.
|
VB, C/C++, Delphi, etc |
Di 31. Mai 2011, 12:58
von RyTech
|
10 |
720 |
 |
Form bei einer .dll?
Erstellt am: Mo 30. Mai 2011, 15:54
RyTech
Vorschau
Go To Post
CPP Code: cCheckBox::cCheckBox(int x, int y, bool checked, char *text, OnClick click) { X = x; Y = y; Checked = checked; Clicked = click; text; bool checkIn(int x, int y); }
so? Wenn ja weiß die funktion doch immernoch nicht welche Box es nun ist? Also als Beispiel nun Disable Spread und Disable Recoil? Wie würde die Box erkennen das diese nun auch die richtige Funktion Aktiviert / Deaktiviert?
|
VB, C/C++, Delphi, etc |
Di 31. Mai 2011, 12:58
von RyTech
|
10 |
720 |
 |
Form bei einer .dll?
Erstellt am: Mo 30. Mai 2011, 15:54
RyTech
Vorschau
Go To Post
das ist ja das gleiche wie das hier dann oder? CPP Code: void cMenu::SetBox( int x, int y,int ColorType, char *text, IDirect3DDevice9* pDevice ) { DrawBox(x, y, 75, 20, 1, D3DCOLOR_ARGB(255,ColorType, ColorType, ColorType), D3DCOLOR_ARGB(255,0, 0, 0) ,pDevice); DrawGameTextPixel( x+5, y, D3DCOLOR_ARGB(255,255,255,255) , text ); }
und dann halt immer ne Box machen und dies mit ner MouseOver funktion auslesen und dann halt den Int von der funktion auf 1 oder 0 setzen, das ist doch ne heiden arbeit bei ca 50 funktionen oder ähnliches, irgentwie muss es doch da ne vereinfachung geben oder?
|
VB, C/C++, Delphi, etc |
Di 31. Mai 2011, 12:58
von RyTech
|
10 |
720 |
 |
Form bei einer .dll?
Erstellt am: Mo 30. Mai 2011, 15:54
RyTech
Vorschau
Go To Post
Mmh ist doch dann das gleiche wie das mit der SetBox, man muss mit der Klasse doch auch immer eine neue Box machen und diese erneut abfragen, oder verstehe ich das irgentwie falsch? Ich habe z.b für die Funktion No Spread es so gemacht: CPP Code: SetBox(x+60, y+150, SpreadColor, "No Spread", pDevice );
Dabei wird nun der Text und die Box gesetzt. SpreadColor habe ich oben im script mit int definiert und es auf 20 gesetzt, so ist die Box dunkel. Nun aktiviere ich die Funktion mit der Mouse: CPP Code: if(IsMouse( x+60, y+150, 75, 20 ) && m_lm) { if(sNoSpread == 0) { SpreadColor = 50; //Damit die Box nun hell wird. sNoSpread = 1; } if(sNoSpread == 1) { SpreadColor = 20; //Damit die Box wieder dunkel wird. sNoSpread = 0; } }
Es funktioniert auch Top, nur es ist sehr aufwendig für viele funktionien immer das selbe zu machen oder machst du z.b das auch so?
|
VB, C/C++, Delphi, etc |
Di 31. Mai 2011, 12:58
von RyTech
|
10 |
720 |
 |
Form bei einer .dll?
Erstellt am: Mo 30. Mai 2011, 15:54
RyTech
Vorschau
Go To Post
CPP Code: void cMenu::SetBox( int x, int y,int ColorType, char *text, IDirect3DDevice9* pDevice ) { DrawBox(x, y, 75, 20, 1, D3DCOLOR_ARGB(255,ColorType, ColorType, ColorType), D3DCOLOR_ARGB(255,0, 0, 0) ,pDevice); DrawGameTextPixel( x+5, y, D3DCOLOR_ARGB(255,255,255,255) , text ); }
Habe den SetBox code definiert. D.h nun anders geht es nicht? also muss ich nun immer diese Funktion neu machen. mmh ich dachte das geht auch irgentwie einfacher :3 Das gibt doch bestimmt nen starken FPS drop oder?
|
VB, C/C++, Delphi, etc |
Di 31. Mai 2011, 12:58
von RyTech
|
10 |
720 |