Kerel 303 Napisano 12 Października 2019 Witam Ostatnio zastanawiam się jak działają plugny typu base builder. Zastanawiam się jak tworzyć obiekty przestrzenne. Chciałem napisać plugin, który po rzuceniu weapon_tagrenade (Granat Taktyczny) będzie blokować efekt widzenia przez ściany i gdy wybuchnie powstanie działo maszynowe (Takie jak w trybie BR) i będzie atakować graczy tylko z przeciwnego teamu. Jestem również ciekawy jak tworzyć dla przykładu sześcian używając wybranej tekstury. Za odpowiedzi z góry dziękuję 🙂 Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Gość Napisano 12 Października 2019 Obczaj ten plugin : https://forums.alliedmods.net/showthread.php?p=2499362Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami! Godzinę temu, Kerel 303 napisał: będzie blokować efekt widzenia przez ściany Czyli nie doprowadzasz do jego wybuchu, a w momencie gdy powinien wybuchnąć dorzucasz inną akcję Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Kerel 303 Napisano 12 Października 2019 (edytowane) @supertimor Bardzo dziękuję za pomoc 🙂 Szczerze Pozdrawiam Dla osób przeglądających ten post: funkcja do wyłapania wybuchu i zablokowania go: //najpierw dajemy includ'y potrzebne do pluginu #include <sourcemod> #include <skdhooks> #include <sdktools> //następnie nakładamy Hook na wybuch granatu public void OnPluginStart() { HookEvent("hegrenade_detonate", HeDetonate, EventHookMode_Pre); } public Action HeDetonate(Event event, const char[] name, bool dontBroadcast) { // tutaj wybuch granatu jest blokowany int entity = event.GetInt("entityid"); char HegranadeName[16]; GetEntPropString(entity, Prop_Data, "m_iName", HegranadeName, sizeof(HegranadeName)); if(!StrEqual(HegranadeName, "normal", false)) { AcceptEntityInput(entity, "Kill"); } //tutaj dajemy kod który ma się wykonać zamiast wybuchu :-) } Mam nadzieję, że dobrze to zrozumiałem (jestem początkującym 😉) na wypadek błędów proszę o napisanie pod postem. Edytowane 12 Października 2019 przez Kerel 303 Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
MAGNET Napisano 12 Października 2019 Pytanie brzmi: Czy działko z Danger Zone normalnie działa? Przykładowo tablet jest po prostu wyłączony, a na szybko przeszukując internet nie dowiedziałem się nic o sentry gunie (jak i również nigdy nie widziałem go na innych serwerach poza DZ). Jeśli okazałoby się, że po prostu się nie da - trzeba wszystko robić ręcznie @EDIT https://steamcommunity.com/sharedfiles/filedetails/?id=1585205430Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami! ent_create dronegun To polecenie stworzy drona. Teraz można się zastanowić jak ma on atakować tylko drużynę przeciwną... Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Gość Napisano 12 Października 2019 (edytowane) Trzeba znaleźć i zahookować moment, w którym ten dziad będzie wybierał target. Wiemy, że ten moment odbywa się gdy coś znajdzie się w jego zasięgu.Tutaj datamaps droneguna : Spoiler CDronegun - dronegun - m_flGroundSpeed (Offset 940) (Save)(4 Bytes) - m_flLastEventCheck (Offset 944) (Save)(4 Bytes) - m_bSequenceFinished (Offset 1028) (Save)(1 Bytes) - m_bSequenceLoops (Offset 1029) (Save)(1 Bytes) - m_nSkin (Offset 964) (Save|Key)(4 Bytes) - ModelSkin - m_nSkin (Offset 964) (Save|Key|Input)(4 Bytes) - skin - m_nBody (Offset 968) (Save|Key)(4 Bytes) - body - m_nBody (Offset 968) (Save|Key|Input)(4 Bytes) - SetBodyGroup - m_nHitboxSet (Offset 972) (Save|Key)(4 Bytes) - hitboxset - m_nSequence (Offset 1040) (Save|Key)(4 Bytes) - sequence - m_flPoseParameter (Offset 1044) (Save)(96 Bytes) - m_flEncodedController (Offset 1140) (Save)(16 Bytes) - m_flPlaybackRate (Offset 980) (Save|Key)(4 Bytes) - playbackrate - m_flCycle (Offset 1036) (Save|Key)(4 Bytes) - cycle - m_pIk (Offset 1020) (Save)(0 Bytes) - m_iIKCounter (Offset 1024) (Save)(4 Bytes) - m_bClientSideAnimation (Offset 1156) (Save)(1 Bytes) - m_bClientSideFrameReset (Offset 1157) (Save)(1 Bytes) - m_nNewSequenceParity (Offset 1160) (Save)(4 Bytes) - m_nResetEventsParity (Offset 1164) (Save)(4 Bytes) - m_nMuzzleFlashParity (Offset 1169) (Save)(1 Bytes) - m_iszLightingOriginRelative (Offset 1180) (Save|Key)(4 Bytes) - LightingOriginHack - m_iszLightingOrigin (Offset 1184) (Save|Key)(4 Bytes) - LightingOrigin - m_hLightingOrigin (Offset 1172) (Save)(4 Bytes) - m_hLightingOriginRelative (Offset 1176) (Save)(4 Bytes) - m_flModelScale (Offset 976) (Save|Key)(4 Bytes) - ModelScale - m_flDissolveStartTime (Offset 1032) (Save)(4 Bytes) - InputIgnite (Offset 0) (Input)(0 Bytes) - Ignite - InputIgniteLifetime (Offset 0) (Input)(0 Bytes) - IgniteLifetime - InputIgnite (Offset 0) (Input)(0 Bytes) - IgniteNumHitboxFires - InputIgnite (Offset 0) (Input)(0 Bytes) - IgniteHitboxFireScale - InputBecomeRagdoll (Offset 0) (Input)(0 Bytes) - BecomeRagdoll - InputSetLightingOriginRelative (Offset 0) (Input)(0 Bytes) - SetLightingOriginHack - InputSetLightingOrigin (Offset 0) (Input)(0 Bytes) - SetLightingOrigin - m_OnIgnite (Offset 1216) (Save|Key|Output)(0 Bytes) - OnIgnite - m_flFrozen (Offset 1196) (Save)(4 Bytes) - m_flFrozenThawRate (Offset 1208) (Save)(4 Bytes) - m_flFrozenMax (Offset 1212) (Save)(4 Bytes) - m_fBoneCacheFlags (Offset 1192) (Save)(2 Bytes) - m_bSuppressAnimSounds (Offset 1168) (Save|Key)(1 Bytes) - SuppressAnimSounds - m_iClassname (Offset 104) (Save|Key)(4 Bytes) - classname - m_iGlobalname (Offset 548) (Global|Save|Key)(4 Bytes) - globalname - m_iParent (Offset 552) (Save|Key)(4 Bytes) - parentname - m_nMinCPULevel (Offset 528) (Save|Key)(1 Bytes) - mincpulevel - m_nMaxCPULevel (Offset 529) (Save|Key)(1 Bytes) - maxcpulevel - m_nMinGPULevel (Offset 530) (Save|Key)(1 Bytes) - mingpulevel - m_nMaxGPULevel (Offset 531) (Save|Key)(1 Bytes) - maxgpulevel - m_iHammerID (Offset 556) (Save|Key)(4 Bytes) - hammerid - m_flSpeed (Offset 560) (Save|Key)(4 Bytes) - speed - m_nRenderFX (Offset 204) (Save|Key)(1 Bytes) - renderfx - m_nRenderMode (Offset 205) (Save|Key)(1 Bytes) - rendermode - m_flPrevAnimTime (Offset 108) (Save)(4 Bytes) - m_flAnimTime (Offset 112) (Save)(4 Bytes) - m_flSimulationTime (Offset 116) (Save)(4 Bytes) - m_nLastThinkTick (Offset 120) (Save)(4 Bytes) - m_iszScriptId (Offset 908) (Save)(4 Bytes) - m_iszVScripts (Offset 872) (Save|Key)(4 Bytes) - vscripts - m_iszScriptThinkFunction (Offset 876) (Save|Key)(4 Bytes) - thinkfunction - m_nNextThinkTick (Offset 172) (Save|Key)(4 Bytes) - nextthink - m_fEffects (Offset 176) (Save|Key)(4 Bytes) - effects - m_clrRender (Offset 208) (Save|Key)(4 Bytes) - rendercolor - m_nModelIndex (Offset 206) (Global|Save|Key)(2 Bytes) - modelindex - touchStamp (Offset 124) (Save)(4 Bytes) - m_aThinkFunctions (Offset 128) (Save)(0 Bytes) - m_ResponseContexts (Offset 148) (Save)(0 Bytes) - m_iszResponseContext (Offset 168) (Save|Key)(4 Bytes) - ResponseContext - m_pfnThink (Offset 16) (Save)(8 Bytes) - m_pfnTouch (Offset 580) (Save)(8 Bytes) - m_pfnUse (Offset 588) (Save)(8 Bytes) - m_pfnBlocked (Offset 596) (Save)(8 Bytes) - m_pfnMoveDone (Offset 8) (Save)(8 Bytes) - m_lifeState (Offset 605) (Save)(1 Bytes) - m_takedamage (Offset 606) (Save)(1 Bytes) - m_iMaxHealth (Offset 564) (Save|Key)(4 Bytes) - max_health - m_iHealth (Offset 568) (Save|Key)(4 Bytes) - health - m_bIsAutoaimTarget (Offset 184) (Save|Key)(1 Bytes) - is_autoaim_target - m_target (Offset 192) (Save|Key)(4 Bytes) - target - m_iszDamageFilterName (Offset 572) (Save|Key)(4 Bytes) - damagefilter - m_hDamageFilter (Offset 576) (Save)(4 Bytes) - m_debugOverlays (Offset 864) (Save)(4 Bytes) - m_pParent (Offset 232) (Global|Save)(4 Bytes) - m_iParentAttachment (Offset 237) (Save)(1 Bytes) - m_hMoveParent (Offset 240) (Global|Save)(4 Bytes) - m_hMoveChild (Offset 244) (Global|Save)(4 Bytes) - m_hMovePeer (Offset 248) (Global|Save)(4 Bytes) - m_iEFlags (Offset 220) (Save)(4 Bytes) - m_iName (Offset 228) (Save)(4 Bytes) Sub-Class Table (1 Deep): m_Collision - CCollisionProperty - m_vecMins (Offset 8) (Global|Save)(12 Bytes) - m_vecMaxs (Offset 20) (Global|Save)(12 Bytes) - m_nSolidType (Offset 34) (Save|Key)(1 Bytes) - solid - m_usSolidFlags (Offset 32) (Save)(2 Bytes) - m_nSurroundType (Offset 42) (Save)(1 Bytes) - m_flRadius (Offset 36) (Save)(4 Bytes) - m_triggerBloat (Offset 35) (Save)(1 Bytes) - m_vecSpecifiedSurroundingMins (Offset 44) (Save)(12 Bytes) - m_vecSpecifiedSurroundingMaxs (Offset 56) (Save)(12 Bytes) - m_vecSurroundingMins (Offset 68) (Save)(12 Bytes) - m_vecSurroundingMaxs (Offset 80) (Save)(12 Bytes) Sub-Class Table (1 Deep): m_Network - CServerNetworkProperty - m_hParent (Offset 52) (Global|Save)(4 Bytes) - m_MoveType (Offset 238) (Save|Key)(1 Bytes) - MoveType - m_MoveCollide (Offset 239) (Save)(1 Bytes) - m_hOwnerEntity (Offset 344) (Save)(4 Bytes) - m_CollisionGroup (Offset 348) (Save|Key)(4 Bytes) - CollisionGroup - m_pPhysicsObject (Offset 352) (Save)(0 Bytes) - m_flElasticity (Offset 464) (Save)(4 Bytes) - m_flShadowCastDistance (Offset 848) (Save|Key)(4 Bytes) - shadowcastdist - m_flDesiredShadowCastDistance (Offset 852) (Save)(4 Bytes) - m_iInitialTeamNum (Offset 804) (Save|Key|Input)(4 Bytes) - TeamNum - m_iTeamNum (Offset 808) (Save|Key)(4 Bytes) - teamnumber - m_iPendingTeamNum (Offset 812) (Save|Key)(4 Bytes) - pendingteamnumber - m_hGroundEntity (Offset 368) (Save)(4 Bytes) - m_flGroundChangeTime (Offset 372) (Save)(4 Bytes) - m_ModelName (Offset 180) (Global|Save|Key)(4 Bytes) - model - m_AIAddOn (Offset 820) (Save|Key)(4 Bytes) - addon - m_vecBaseVelocity (Offset 376) (Save|Key)(12 Bytes) - basevelocity - m_vecAbsVelocity (Offset 388) (Save)(12 Bytes) - m_vecAngVelocity (Offset 400) (Save|Key)(12 Bytes) - avelocity - m_rgflCoordinateFrame (Offset 412) (Save)(48 Bytes) - m_nWaterLevel (Offset 363) (Save|Key)(1 Bytes) - waterlevel - m_nWaterType (Offset 362) (Save)(1 Bytes) - m_pBlocker (Offset 520) (Save)(4 Bytes) - m_flGravity (Offset 824) (Save|Key)(4 Bytes) - gravity - m_flFriction (Offset 460) (Save|Key)(4 Bytes) - friction - m_flLocalTime (Offset 468) (Save|Key)(4 Bytes) - ltime - m_flVPhysicsUpdateLocalTime (Offset 472) (Save)(4 Bytes) - m_flMoveDoneTime (Offset 476) (Save)(4 Bytes) - m_vecAbsOrigin (Offset 484) (Save)(12 Bytes) - m_vecVelocity (Offset 508) (Save|Key)(12 Bytes) - velocity - m_iTextureFrameIndex (Offset 524) (Save|Key)(1 Bytes) - texframeindex - m_bSimulatedEveryTick (Offset 525) (Save)(1 Bytes) - m_bAnimatedEveryTick (Offset 526) (Save)(1 Bytes) - m_bAlternateSorting (Offset 527) (Save)(1 Bytes) - m_spawnflags (Offset 816) (Save|Key)(4 Bytes) - spawnflags - m_nTransmitStateOwnedCounter (Offset 236) (Save)(1 Bytes) - m_angAbsRotation (Offset 496) (Save)(12 Bytes) - m_vecOrigin (Offset 752) (Save)(12 Bytes) - m_angRotation (Offset 764) (Save)(12 Bytes) - m_bClientSideRagdoll (Offset 604) (Save)(1 Bytes) - m_vecViewOffset (Offset 780) (Save|Key)(12 Bytes) - view_ofs - m_fFlags (Offset 224) (Save)(4 Bytes) - m_nSimulationTick (Offset 212) (Save)(4 Bytes) - m_flNavIgnoreUntilTime (Offset 364) (Save)(4 Bytes) - InputSetTeam (Offset 0) (Input)(0 Bytes) - SetTeam - m_fadeMinDist (Offset 836) (Save|Key|Input)(4 Bytes) - fademindist - m_fadeMaxDist (Offset 840) (Save|Key|Input)(4 Bytes) - fademaxdist - m_flFadeScale (Offset 844) (Save|Key)(4 Bytes) - fadescale - InputKill (Offset 0) (Input)(0 Bytes) - Kill - InputKillHierarchy (Offset 0) (Input)(0 Bytes) - KillHierarchy - InputUse (Offset 0) (Input)(0 Bytes) - Use - InputAlpha (Offset 0) (Input)(0 Bytes) - Alpha - InputAlternativeSorting (Offset 0) (Input)(0 Bytes) - AlternativeSorting - InputColor (Offset 0) (Input)(0 Bytes) - Color - InputSetParent (Offset 0) (Input)(0 Bytes) - SetParent - InputSetParentAttachment (Offset 0) (Input)(0 Bytes) - SetParentAttachment - InputSetParentAttachmentMaintainOffset (Offset 0) (Input)(0 Bytes) - SetParentAttachmentMaintainOffset - InputClearParent (Offset 0) (Input)(0 Bytes) - ClearParent - InputSetLocalOrigin (Offset 0) (Input)(0 Bytes) - SetLocalOrigin - InputSetLocalAngles (Offset 0) (Input)(0 Bytes) - SetLocalAngles - InputSetDamageFilter (Offset 0) (Input)(0 Bytes) - SetDamageFilter - InputEnableDamageForces (Offset 0) (Input)(0 Bytes) - EnableDamageForces - InputDisableDamageForces (Offset 0) (Input)(0 Bytes) - DisableDamageForces - InputDispatchResponse (Offset 0) (Input)(0 Bytes) - DispatchResponse - InputAddContext (Offset 0) (Input)(0 Bytes) - AddContext - InputRemoveContext (Offset 0) (Input)(0 Bytes) - RemoveContext - InputClearContext (Offset 0) (Input)(0 Bytes) - ClearContext - InputDisableShadow (Offset 0) (Input)(0 Bytes) - DisableShadow - InputEnableShadow (Offset 0) (Input)(0 Bytes) - EnableShadow - InputDisableDraw (Offset 0) (Input)(0 Bytes) - DisableDraw - InputEnableDraw (Offset 0) (Input)(0 Bytes) - EnableDraw - InputDisableReceivingFlashlight (Offset 0) (Input)(0 Bytes) - DisableReceivingFlashlight - InputEnableReceivingFlashlight (Offset 0) (Input)(0 Bytes) - EnableReceivingFlashlight - InputDisableDrawInFastReflection (Offset 0) (Input)(0 Bytes) - DisableDrawInFastReflection - InputEnableDrawInFastReflection (Offset 0) (Input)(0 Bytes) - EnableDrawInFastReflection - InputAddOutput (Offset 0) (Input)(0 Bytes) - AddOutput - InputFireUser1 (Offset 0) (Input)(0 Bytes) - FireUser1 - InputFireUser2 (Offset 0) (Input)(0 Bytes) - FireUser2 - InputFireUser3 (Offset 0) (Input)(0 Bytes) - FireUser3 - InputFireUser4 (Offset 0) (Input)(0 Bytes) - FireUser4 - InputRunScriptFile (Offset 0) (Input)(0 Bytes) - RunScriptFile - InputRunScript (Offset 0) (Input)(0 Bytes) - RunScriptCode - InputCallScriptFunction (Offset 0) (Input)(0 Bytes) - CallScriptFunction - m_OnUser1 (Offset 612) (Save|Key|Output)(0 Bytes) - OnUser1 - m_OnUser2 (Offset 636) (Save|Key|Output)(0 Bytes) - OnUser2 - m_OnUser3 (Offset 660) (Save|Key|Output)(0 Bytes) - OnUser3 - m_OnUser4 (Offset 684) (Save|Key|Output)(0 Bytes) - OnUser4 - CBaseEntitySUB_Remove (Offset 0) (FunctionTable)(0 Bytes) - CBaseEntitySUB_DoNothing (Offset 0) (FunctionTable)(0 Bytes) - CBaseEntitySUB_StartFadeOut (Offset 0) (FunctionTable)(0 Bytes) - CBaseEntitySUB_StartFadeOutInstant (Offset 0) (FunctionTable)(0 Bytes) - CBaseEntitySUB_FadeOut (Offset 0) (FunctionTable)(0 Bytes) - CBaseEntitySUB_Vanish (Offset 0) (FunctionTable)(0 Bytes) - CBaseEntitySUB_CallUseToggle (Offset 0) (FunctionTable)(0 Bytes) - CBaseEntityShadowCastDistThink (Offset 0) (FunctionTable)(0 Bytes) - CBaseEntityScriptThink (Offset 0) (FunctionTable)(0 Bytes) - m_hEffectEntity (Offset 832) (Save)(4 Bytes) - m_bLagCompensate (Offset 857) (Save|Key)(1 Bytes) - LagCompensate - m_bForcePurgeFixedupStrings (Offset 858) (Save)(1 Bytes) - m_flUseLookAtAngle (Offset 4) (Save)(4 Bytes) - m_flMaxFallVelocity (Offset 828) (Save)(4 Bytes) - m_bEligibleForScreenHighlight (Offset 532) (Save)(1 Bytes) Myślę, że "m_target (Offset 192) (Save|Key)(4 Bytes) - target" będzie nas interesowało. Trzeba by sprawdzić, czy przypadkiem tutaj nie jest zapisywany ID klienta, w którego działko będzie strzelało. Jeśli tak, to trzeba je zmienić. Jednak to nie jest droga, którą proponowałem, bo tu zmieniamy ID pobranego już klienta a zamysł był taki, żeby pobierać tylko klientów z przeciwnego teamu. W ogóle team droneguna, istnieje coś takiego? 😉 Próbowałem ręcznie nadać team przez : - m_iTeamNum (Offset 808) (Save|Key)(4 Bytes) - teamnumber Nie próbowałem przez : - m_iPendingTeamNum (Offset 812) (Save|Key)(4 Bytes) - pendingteamnumber - m_iInitialTeamNum (Offset 804) (Save|Key|Input)(4 Bytes) - TeamNum Może warto spróbować? Edytowane 12 Października 2019 przez Gość Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Kerel 303 Napisano 12 Października 2019 @supertimor Cytat W ogóle team droneguna, istnieje coś takiego? Można zebrać team clienta z eventu tego kto wyrzucił granat (następny Hook) i zapisać to jako DataPack lub zmienna globalną. Ale nie wiem co trzeba byłoby zrobić by ten maszyniak strzelał do 2 teamu. 🙂 Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Gość Napisano 12 Października 2019 No tu mowa wyłącznie o sentry gunie, bo jeśli chodzi o granat to prościzna 😛 Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Kerel 303 Napisano 12 Października 2019 @supertimor Po prostu nie zrozumiałem pytania 😉 Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Vasto_Lorde Napisano 12 Stycznia 2020 Wiadomość wygenerowana automatycznie Temat został zamknięty. Powodem jest całkowite rozwiązanie problemu zawartego w temacie. Jeśli się z tym nie zgadzasz, zaraportuj ten post z prośbą o ponowne otwarcie i kontynuację dyskusji. Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach