PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : AimPos



Scuddy
22.09.2011, 16:37
Servus,

hat irgendjemand ´ne Idee, wie ich in Gmod einen einfachen Punkt (.) an der Stelle des Bildschirms anzeigen kann, auf die ich gerade Ziele? AimPos, sozusagen.


Viele Grüße
Scuddy

RP-01
22.09.2011, 20:09
Etwa einfach einen Punkt in die Mitte des Bildschirms?

Bier_Baron
22.09.2011, 20:36
In der Mitte des Bildschirms oder der Map?
Oder meinste das Fadenkreuz?

Scuddy
23.09.2011, 00:14
In der Mitte des Bildschirms.
Man könnte es durchaus als Fadenkreuz verstehen.

Ich muss in Bezug auf Lua noch viel lernen und wenn mir etwas in den Sinn kommt, dann versuche ich das - ganz gleich wie unnötig es erscheinen mag.

Scuddy
03.10.2011, 17:38
Hier kriegt man wirklich keine Hilfe. Besten Dank.
Bitte löschen..

RP-01
03.10.2011, 23:05
Ich bin zurzeit leider einer der wenigen, hier im Forum noch halbwegs aktiven, Lua coder. Das ist womöglich auch der Grund wieso der Lua-Support hier momentan etwas (sehr) rahr ist.

Um deine Frage zu beantworten:

hook.Add( "HUDPaint", "crosshair thingy", --HUDPaint; Hook, welcher benötigt wird, um eine 2D Renderfunktion auszuführen
function()
surface.SetDrawColor( 0, 255, 0, 255) --Setzt die Render-Farbe zu Grün
surface.DrawRect( (ScrW()/2)-1 , (ScrH()/2)-1, 2, 2 ) --Erzeugt ein 2*2px großes Quadrat in der Mitte des Bildschirms
end
)


Links:
Gamemode.HUDPaint http://wiki.garrysmod.com/favicon.ico (wiki.garrysmod.com/?title=Gamemode.HUDPaint)
Surface.SetDrawColor http://wiki.garrysmod.com/favicon.ico (http://wiki.garrysmod.com/?title=Surface.SetDrawColor)
Surface.DrawRect http://wiki.garrysmod.com/favicon.ico (http://wiki.garrysmod.com/?title=Surface.DrawRect)

Scuddy
04.10.2011, 15:07
Servus RP-01,

erstmal möchte ich um Verzeihung bitten. Ich neige zur Aggression in bereits dargelegter Form.
Vielen Dank für Deine Antwort. Ich sitze gerade im Büro, werde Deinen Code nach Ankunft zu Hause umgehend ausprobieren.
Bereits jetzt sehr ich ganz klar, dass ich das auf diese Art derzeit nicht alleine geschafft hätte.
Aus diesem Code kann ich lernen.

Besten Dank
Ich werde mein Feedback in 2-3 Stunden abgeben (können)

ALL YOU CAN EAT
07.10.2011, 11:06
Verwende es lieber so...

hook.Add( "HUDPaint", "crosshair thingy", --HUDPaint; Hook, welcher benötigt wird, um eine 2D Renderfunktion auszuführen

function()
local AimPos = LocalPlayer():GetAimVector():ToScreen()
surface.SetDrawColor( 0, 255, 0, 255) --Setzt die Render-Farbe zu Grün
surface.DrawRect( AimPos.x - 1 , AimPos.y - 1, 2, 2 )

end

)

Nun ist der Punkt auch wirklich da wo du auch hin schaust.

monky2k6
07.10.2011, 12:02
Müsste die Zeile
surface.DrawRect( AimPos.x , AimPos.y, 2, 2 )
nicht eher so aussehen?
surface.DrawRect( AimPos.x - 1, AimPos.y - 1, 2, 2 )

Er muss ja einen Pixel zurück weil er von der Mitte aus dann ja 2 nach Unten und 2 nach Rechts zeichnen würde...