Jump to content

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Posted Image Posted Image

Guest Message by DevFuse
 

Photo

Przechwycenie kto jest VIPem as_oilrig


  • You cannot start a new topic
  • Please log in to reply
6 replies to this topic

#1 nojaknie

    Profesjonalista

  • Użytkownik

Reputacja: 57
Pomocny

  • Postów:195
Offline

Posted 15.01.2021 17:28

Czy jest jakaś możliwość bym przechwycił informacje kto jest VIPem na mapach as, w moim przypadku as_oilrig (https://maps.cs-bg.info/maps/cs/35/

np. po to by dodać tej osobie jakieś bonusy typu więcej HP.

Jest to jakaś osoba co rundę, mapy as polegają na transporcie wylosowanej osoby w dane miejsce.

Jeśli to możliwe to bym poprosił jakiś przykład? 

Z góry dziękuje


Edited by esej, 15.01.2021 17:30.

  • +
  • -
  • 0

#2 Rivit

    Godlike

  • Support Team

Reputacja: 1,319
Godlike

  • Postów:4,381
Offline

Posted 15.01.2021 18:23

Ciekawe, pograłbym w sumie na takim czymś

 

Popatrz jak generator vipa to robi:

public plugin_init(){
	register_message(get_user_msgid("ScoreAttrib"), "VipStatus");
}

public VipStatus(){
	new id=get_msg_arg_int(1);
	if(is_user_alive(id) && g_Vip[id]){
		set_msg_arg_int(2, ARG_BYTE, get_msg_arg_int(2)|4);
	}
}

można pobrać drugi argument i sprawdzić czy & 4 daje coś większego od zera. Nie mam pojęcia tylko w którym to momencie sie odpala ta message, ale powinna na początku rundy


  • +
  • -
  • 1

#3 nojaknie

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 57
Pomocny

  • Postów:195
Offline

Posted 15.01.2021 19:04

Rozumiem że jedynym wyznacznikiem osoby która ma zostać przetransportowana jest status?

A co jeśli status VIPa mają również osoby które są tzw. przysłowiowym serwerowym VIPem a nie tym trybowym, z mapy?

bo ta część wyświetla się w tabeli i jest to chyba jedyne oznaczenie


Edited by esej, 15.01.2021 19:05.

  • +
  • -
  • 0

#4 Rivit

    Godlike

  • Support Team

Reputacja: 1,319
Godlike

  • Postów:4,381
Offline

Posted 15.01.2021 19:06


Rozumiem że jedynym wyznacznikiem osoby która ma zostać przetransportowana jest status?

 

Tego nie wiem, można jeszcze po modelu postaci sprawdzić. Tak mi tera do gowy przyszło.

 


A co jeśli status mają również osoby które są tzw. przysłowiowym serwerowym VIPem a nie tym trybowym, z mapy?

A no widzisz, będzie dokładnie tak jak mówisz ;)


  • +
  • -
  • 1

#5 nojaknie

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 57
Pomocny

  • Postów:195
Offline

Posted 15.01.2021 19:09

No to lipa, dziękuje za odpowiedzi, nie zamykajmy tematu może ktoś wpadnie na coś genialnego w wolnym czasie  ;P


  • +
  • -
  • 0

#6 Rivit

    Godlike

  • Support Team

Reputacja: 1,319
Godlike

  • Postów:4,381
Offline

Posted 15.01.2021 19:15

Ale co złego z modelem jest? Wystarczy przed podmianą (jeśli używasz customowych) sprawdzić :D  Ale chętnie bym się dowiedział jak to wyciągnąć jeszcze. Można by po offsetach popatrzyć jakichś.

 

Ty, a sprawdzałeś natyw cs_get_user_vip

 

 

I offsety:

					"m_bIsVIP"  // bool
					{
						"type"      "boolean"

						"windows"   "837"
						"linux"     "857"
						"mac"       "857"
					}

Edited by TibacK, 15.01.2021 19:19.

  • +
  • -
  • 0

#7 nojaknie

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 57
Pomocny

  • Postów:195
Offline

Posted 15.01.2021 19:41

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <hamsandwich>
#include <fun>

#define PLUGIN "Wiecej HP dla VIPa na mapach AS"
#define VERSION "1.0"
#define AUTHOR "esej"


public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    RegisterHam(Ham_Spawn, "player", "GiveHealth", 1);
}

public GiveHealth(id)
{
    new TEAM = cs_get_user_vip(id);
    for(new i = 1; i < 32; i++)
    {
        if(TEAM)
        {
            new HEALTH = get_user_health(id) * i;
            set_user_health(id, 200);
        }
    }
} 

Sprawdziłem tym kodem i działa, osoba której wykrywa że jest VIPem (MAPY AS PO STRONIE CT) dostaje więcej HP 

potem spróbuje jeszcze z modelem

 

Ps. co do tego wycinka, TAK, WIEM  :lol:


Edited by esej, 15.01.2021 19:43.

  • +
  • -
  • 0




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users