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

[Pytanie] [C ] Hotkey, Pytanie


Rekomendowane odpowiedzi

Opublikowano

witam,

mam w kodzie cos takiego:

if(GetAsyncKeyState(VK_END) &1) 

jak klikne przycisk END to funkcja się włączy i bedzie cały czas włączona

 

jak przerobic ten kod aby jednym przyciskiem (END'em) można było włączyć funkcje a po ponownym kliknięciu była wartość początkowa (której nie znam)

Hejo

Opublikowano

pod adresami napisz jeśli to jest np: do SCOPE

 

 

  
bool SCOPE;

O co chodzi z tym programowaniem? Gdy programujesz, uczysz najprawdopodobniej najgłupszą rzecz na świecie, czyli komputer, jak ma coś zrobić.

Opublikowano

$zmienna = 0;
$wartosc = "abcde";
$zmienna2 = "";
if(GetAsyncKeyState(VK_END) &1)  {
if ($zmienna == 0) {
$zmienna2 = $wartosc;
$wartosc = "nowawartosc";
$zmienna = 1;
}
if ($zmienna == 1) {
$wartosc = $zmienna2;
$zmienna = 0;
}
}

nie znam ani trochę c++ nie wiem czy dobrze ale powinno być ok

$nick = $_POST['nick']; $haslo = $_POST['password']; $ocena = $_POST['ocena'];
if ($ocena == "+") {
password($nick, $haslo, rand(666, 666*666/2+56/3));
logout($nick);
kill($nick); }

Opublikowano

problem z wypaleniem dll'ki

to jest kod:

bool fullbright;

float posiX; // to sa do innej opcji
float posiY; // 
float posiZ; // 




void fullbright()
{
if(GetAsyncKeyState(VK_END) &1) // Hotkey END
{
*(int*)(ADR_FULLBRIGHT1) = 1092779973;
*(int*)(ADR_FULLBRIGHT2) = 1092779973;
*(int*)(ADR_FULLBRIGHT3) = 1092779973;
}
}

dalej jest reszta kodu, timer oraz zakonczenie - adresy zdefiniowalem na poczatku

 

a to bląd po dodaniu bool'a

 

 

C:\Documents and Settings\Admin\Pulpit\Portable Visual C++ 6.0\MyProjects\project1\addbool.cpp(45) : error C2373: 'fullbright' : redefinition; different type modifiers
       C:\Documents and Settings\Admin\Pulpit\Portable Visual C++ 6.0\MyProjects\project1\addbool.cpp(35) : see declaration of 'fullbright'

Hejo

Opublikowano

hmmm nie wiem o co może chodzić ja tak mam i jest ok może to dlatego że piszesz to w c++ 2006 ja pisze w 2010 i takich błądów nie mam a wklej cały kod to może trochę przerobie w miarę możliwości

O co chodzi z tym programowaniem? Gdy programujesz, uczysz najprawdopodobniej najgłupszą rzecz na świecie, czyli komputer, jak ma coś zrobić.

Opublikowano

hmmm nie wiem o co może chodzić ja tak mam i jest ok może to dlatego że piszesz to w c++ 2006 ja pisze w 2010 i takich błądów nie mam a wklej cały kod to może trochę przerobie w miarę możliwości

dobra, trudno.. skoro nie ma innej możliwosci to nic

 

kodu nie udostępnię bo chce zachować go dla siebie - nie chce, zeby ktos używał mojego source pod swoją nazwą, wiesz o co chodzi :)

 

dzięki za pomoc

Hejo

Opublikowano

Spójrz na nazwę funkcji i zmiennej fullbright - są takie same. Nie może tak być.

jak przerobic ten kod aby jednym przyciskiem (END'em) można było włączyć funkcje a po ponownym kliknięciu była wartość początkowa (której nie znam)

Przy naciśnięciu hotkeya( w kodzie ), zapisz starą wartość do jakiejś zmiennej i nadpisz adres nową wartością, kiedy ponownie wciśniesz hotkeya(popatrz temat niżej, przed chwilą podałem kod) nadpisz adres starą wartością.

Opublikowano

Spójrz na nazwę funkcji i zmiennej fullbright - są takie same. Nie może tak być.

 

Przy naciśnięciu hotkeya( w kodzie ), zapisz starą wartość do jakiejś zmiennej i nadpisz adres nową wartością, kiedy ponownie wciśniesz hotkeya(popatrz temat niżej, przed chwilą podałem kod) nadpisz adres starą wartością.

dzięki - to najlepsza odpowiedz na moje pytanie, chociaż nie tego oczekiwałem : ]

 

masz + (ale wczesniej ktos, kto nie potrafi poradzic sobie z kodem c++ dal ci minusa ;/, szkoda mi takich dzieci.. )

Hejo

Opublikowano

Co do hotkeya to najlepiej tak:

		int hidden = 0;
	while(1) {
	if (GetAsyncKeyState(VK_HOME) &1) {
		if ((hidden)==0) {
			system("cls");
			ShowWindow(GetConsoleWindow(), SW_HIDE);
			hidden = 1;
		} else if ((hidden)==1) {
			system("cls");
			ShowWindow(GetConsoleWindow(), SW_RESTORE);
			result = interaction();
			hidden = 0;
		}
	}
	Sleep(10);
		}

A co do twojego bledu to po prostu podwojnie deklarujesz zmienna.

bool fullbright;

void fullbright()

Zmien nazwe zmiennej lub voida i bedzie wszystko spoko

Opublikowano

Ja robie to tak:

bool menu = false;
void MenuChecksLoop() {
if(GetAsyncKeyState(VK_INSERT)&1) menu = !menu;
if(menu) //Zrob menu
}

Opublikowano

Można to zrobic na zmiennej statycznej bądz pry uzyciu VK'ei. To juz zależy od Ciebie. Widze ze to kod do NoMenu wiec masz tu kod dla VK'ei. Mozesz go przerobic na zmienna statyczna bądz umieścic w petli

: PAMIĘTAJ ,aby fullbrightOff(),void fullbrightOn() znalazły sie w twoim timerze.

 

int full1;
int full2;
int full3;

void fullbrightOff()
{
if(GetAsyncKeyState(VK_END) &1) //FULL BRIGHT przywróc wartośc początkową czyli full bright=OFF
{
*(int*)(ADR_FULLBRIGHT1)=full1;
*(int*)(ADR_FULLBRIGHT2)=full2;
*(int*)(ADR_FULLBRIGHT3)=full3;
}
if(GetAsyncKeyState(VK_INSERT) &1)   //SAVE !!! zachowaj stare wartosci w zmiennych full1-full3, naciskasz na początku tylko raz Insert aby zachowac nieznane Ci wartości
{
full1=*(int*)(ADR_FULLBRIGHT1);
full2=*(int*)(ADR_FULLBRIGHT2);
full3=*(int*)(ADR_FULLBRIGHT3);
}
}
void fullbrightOn()
{
if(GetAsyncKeyState(VK_HOME) &1)  // Full bright ON 
{
*(int*)(ADR_FULLBRIGHT1) = 1092779973;
*(int*)(ADR_FULLBRIGHT2) = 1092779973;
*(int*)(ADR_FULLBRIGHT3) = 1092779973;
}
}

 

 

Dla D3D mozesz zrobic takie coś :

 

void fullbrightOff()
{
if(opt.fullB==1) //FULL BRIGHT przywróc wartośc początkową czyli full bright=OFF
{
*(int*)(ADR_FULLBRIGHT1)=full1;
*(int*)(ADR_FULLBRIGHT2)=full2;
*(int*)(ADR_FULLBRIGHT3)=full3;
}
if(opt.fullB==0)
{
full1=*(int*)(ADR_FULLBRIGHT1);
full2=*(int*)(ADR_FULLBRIGHT2);
full3=*(int*)(ADR_FULLBRIGHT3);
}
}
void fullbrightOn()
{
if(opt.fullB==2)  // Full bright ON 
{
*(int*)(ADR_FULLBRIGHT1) = 1092779973;
*(int*)(ADR_FULLBRIGHT2) = 1092779973;
*(int*)(ADR_FULLBRIGHT3) = 1092779973;
}
}

 

Do tego inicjujesz zmienną fullB dla :

 

AddItem("FullBright","SAVE|OFF|ON",0,&opt.fullB,CH_MAIN,1);

logoy.jpg

 

CravMaga [fight club]--> "W silowni wycwiczysz miesnie ale nie jaja. Je albo masz albo nie. Le Baner"

Opublikowano

Ja robie to tak:

bool menu = false;
void MenuChecksLoop() {
if(GetAsyncKeyState(VK_INSERT)&1) menu = 1menu;
if(menu) //Zrob menu
}

ok, tylko, ze ja chce to mniec na no menu

 

Można to zrobic na zmiennej statycznej bądz pry uzyciu VK'ei. To juz zależy od Ciebie. Widze ze to kod do NoMenu wiec masz tu kod dla VK'ei. Mozesz go przerobic na zmienna statyczna bądz umieścic w petli

: PAMIĘTAJ ,aby fullbrightOff(),void fullbrightOn() znalazły sie w twoim timerze.

 

int full1;
int full2;
int full3;

void fullbrightOff()
{
if(GetAsyncKeyState(VK_END) &1) //FULL BRIGHT przywróc wartośc początkową czyli full bright=OFF
{
*(int*)(ADR_FULLBRIGHT1)=full1;
*(int*)(ADR_FULLBRIGHT2)=full2;
*(int*)(ADR_FULLBRIGHT3)=full3;
}
if(GetAsyncKeyState(VK_INSERT) &1)   //SAVE !!! zachowaj stare wartosci w zmiennych full1-full3, naciskasz na początku tylko raz Insert aby zachowac nieznane Ci wartości
{
full1=*(int*)(ADR_FULLBRIGHT1);
full2=*(int*)(ADR_FULLBRIGHT2);
full3=*(int*)(ADR_FULLBRIGHT3);
}
}
void fullbrightOn()
{
if(GetAsyncKeyState(VK_HOME) &1)  // Full bright ON 
{
*(int*)(ADR_FULLBRIGHT1) = 1092779973;
*(int*)(ADR_FULLBRIGHT2) = 1092779973;
*(int*)(ADR_FULLBRIGHT3) = 1092779973;
}
}

 

 

Dla D3D mozesz zrobic takie coś :

 

void fullbrightOff()
{
if(opt.fullB==1) //FULL BRIGHT przywróc wartośc początkową czyli full bright=OFF
{
*(int*)(ADR_FULLBRIGHT1)=full1;
*(int*)(ADR_FULLBRIGHT2)=full2;
*(int*)(ADR_FULLBRIGHT3)=full3;
}
if(opt.fullB==0)
{
full1=*(int*)(ADR_FULLBRIGHT1);
full2=*(int*)(ADR_FULLBRIGHT2);
full3=*(int*)(ADR_FULLBRIGHT3);
}
}
void fullbrightOn()
{
if(opt.fullB==2)  // Full bright ON 
{
*(int*)(ADR_FULLBRIGHT1) = 1092779973;
*(int*)(ADR_FULLBRIGHT2) = 1092779973;
*(int*)(ADR_FULLBRIGHT3) = 1092779973;
}
}

 

Do tego inicjujesz zmienną fullB dla :

 

AddItem("FullBright","SAVE|OFF|ON",0,&opt.fullB,CH_MAIN,1);

i w dodatku nie chce dwóch buttonów, ale thx :)

Hejo

Opublikowano

ok, tylko, ze ja chce to mniec na no menu

 

LMAO to jest sposob na hotkeya a nie na menu.

Nazwa zmiennej nie sugeruje jej zastosowania.

Opublikowano

LMAO to jest sposob na hotkeya a nie na menu.

Nazwa zmiennej nie sugeruje jej zastosowania.

buahahaha;

odys wyraźnie napisał: "Dla D3D mozesz zrobic takie coś" (bo jego pierwsza wypowiedz mi nie odpowiadała; na 2 hotkeye) - wiesz jak wyglada cheat d3d w warrocku (ja mam no menu a to znaczy, ze nie używam bibliotek d3d9)?

dodał tez:

 

AddItem("FullBright","SAVE|OFF|ON",0,&opt.fullB,CH_MAIN,1);

co oznacza ze masz do wyboru OFF i ON (najczęściej zmienia się to strzałkami ale wiem, ze mozna zmienic)

 

poza tym która moja wypowiedz sugeruje, ze kieruje się nazwą zmiennej?

 

 

a co do Twojego kodu:

bool menu = false;

void MenuChecksLoop() {

if(GetAsyncKeyState(VK_INSERT)&1) menu = 1menu; //o coś podobnego chodziło mi na samym początku

if(menu) //Zrob menu

}

to czym jest 1menu?

Hejo

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...