CROSSHAIR AND FREE PREMIUM FOR VECK IO!!

FREE PREMIUM AND MYRR's CROSSHAIR

Size

9.5 KB

Version

1.4 or 1.5 (I don't remember tbh)

Created

Feb 26, 2026

Updated

about 2 months ago

1// ==UserScript==
2// @name         CROSSHAIR AND FREE PREMIUM FOR VECK IO!!
3// @version      1.4 or 1.5 (I don't remember tbh)
4// @description FREE PREMIUM AND MYRR's CROSSHAIR
5// @author        ceborix
6// @match        *://*poxel.io/*
7// @match        *://*kour.io/*
8// @match        *://*cryzen.io/*
9// @match        *://*veck.io/*
10// @namespace http://tampermonkey.net/
11// @downloadURL https://update.greasyfork.org/scripts/567549/CROSSHAIR%20AND%20FREE%20PREMIUM%20FOR%20VECK%20IO%21%21.user.js
12// @updateURL https://update.greasyfork.org/scripts/567549/CROSSHAIR%20AND%20FREE%20PREMIUM%20FOR%20VECK%20IO%21%21.meta.js
13// ==/UserScript==
14
15(function () {
16    'use strict';
17
18    const STORAGE_KEY = 'crosshair-settings';
19    function saveSettings(style) {
20        localStorage.setItem(STORAGE_KEY, JSON.stringify({ style }));
21    }
22    function loadSettings() {
23        return JSON.parse(localStorage.getItem(STORAGE_KEY) || '{}');
24    }
25
26    const state = {
27        currentStyle: 'ceborix',
28        ...loadSettings()
29    };
30
31    const crosshair = document.createElement('div');
32    crosshair.id = 'custom-crosshair';
33    crosshair.style.position = 'fixed';
34    crosshair.style.top = '50%';
35    crosshair.style.left = '50%';
36    crosshair.style.transform = 'translate(-50%, -50%)';
37    crosshair.style.zIndex = '9999';
38    crosshair.style.pointerEvents = 'none';
39    document.body.appendChild(crosshair);
40
41    function clearCrosshair() {
42        crosshair.innerHTML = '';
43        crosshair.style.background = '';
44        crosshair.style.border = '';
45        crosshair.style.borderRadius = '';
46        crosshair.style.filter = '';
47        crosshair.style.width = '';
48        crosshair.style.height = '';
49        crosshair.style.maskImage = '';
50        crosshair.style.webkitMaskImage = '';
51        crosshair.style.display = 'none';
52    }
53
54    function applyCrosshair(style) {
55        clearCrosshair();
56        if (!style) return;
57
58        crosshair.style.display = 'flex';
59        crosshair.style.alignItems = 'center';
60        crosshair.style.justifyContent = 'center';
61
62               switch (style) {
63           case 'myrrr':
64                crosshair.style.width = '15px';
65                crosshair.style.height = '15px';
66                crosshair.style.filter = 'drop-shadow(0 0 1px #fff) drop-shadow(0 0 2px #cc88ff)';
67                const horiz = document.createElement('div');
68                Object.assign(horiz.style, {
69                    position: 'absolute',
70                    width: '15px',
71                    height: '3px',
72                    background: 'linear-gradient(to bottom, #ffffff, #e0ccff)',
73                    borderRadius: '1px',
74                });
75                const vert = document.createElement('div');
76                Object.assign(vert.style, {
77                    position: 'absolute',
78                    width: '3px',
79                    height: '15px',
80                    background: 'linear-gradient(to bottom, #ffffff, #e0ccff)',
81                    borderRadius: '1px',
82                });
83                crosshair.appendChild(horiz);
84                crosshair.appendChild(vert);
85                break;
86
87            case 'dot':
88                crosshair.style.width = '6px';
89                crosshair.style.height = '6px';
90                crosshair.style.borderRadius = '50%';
91                crosshair.style.background = '#fff';
92                crosshair.style.filter = 'drop-shadow(0 0 4px #66f)';
93                break;
94
95            case 'shotgun':
96                crosshair.style.width = '40px';
97                crosshair.style.height = '40px';
98                crosshair.style.border = '4px solid #fff';
99                crosshair.style.borderRadius = '50%';
100                crosshair.style.boxSizing = 'border-box';
101                crosshair.style.background = '(#fff, 0.1)';
102                crosshair.style.filter = 'drop-shadow(0 0 8px #66f';
103                break;
104
105            case 'ceborix':
106                crosshair.style.width = '11px';
107                crosshair.style.height = '11px';
108                crosshair.style.filter = '';
109                const horizCeborix = document.createElement('div');
110                Object.assign(horizCeborix.style, {
111                    position: 'absolute',
112                    width: '11px',
113                    height: '3px',
114                    background: '#fff',
115                    borderRadius: '1px',
116                });
117                const vertCeborix = document.createElement('div');
118                Object.assign(vertCeborix.style, {
119                    position: 'absolute',
120                    width: '3px',
121                    height: '11px',
122                    background: '#fff',
123                    borderRadius: '1px',
124                });
125                crosshair.appendChild(horizCeborix);
126                crosshair.appendChild(vertCeborix);
127                break;
128        }
129    }
130
131    const style = document.createElement('style');
132    style.textContent = `
133        #crosshair-settings {
134        position: fixed;
135        top: 100px;
136        right: 10px;
137        z-index: 99999;
138        font-family: Arial, sans-serif;
139        background-color: #222;
140        border-radius: 20px;
141        padding: 10px;
142        width: auto;
143        height: auto;
144        box-shadow: 0 0 15px rgba(0, 0, 0, 0.4);
145        transition: opacity 0.3s ease, transform 0.3s ease;
146    }
147
148        #crosshair-settings-button {
149            background: transparent;
150            border: none;
151            font-size: 24px;
152            color: #fff;
153            cursor: pointer;
154            filter: drop-shadow(0 0 3px #000);
155            transition: transform 0.3s ease;
156        }
157
158        #crosshair-settings-button:hover {
159            transform: scale(1.1);
160        }
161
162        #crosshair-menu {
163            display: none;
164            flex-direction: column;
165            margin-top: 10px;
166            background: rgba(30, 30, 30, 0.95);
167            border-radius: 10px;
168            padding: 10px;
169            box-shadow: 0 0 10px #000;
170            transition: opacity 0.3s ease-in-out;
171        }
172
173        .crosshair-option {
174            display: flex;
175            justify-content: space-between;
176            align-items: center;
177            margin: 8px 0;
178            color: #fff;
179            font-size: 14px;
180            gap: 8px;
181            flex-wrap: nowrap
182        }
183
184        .switch {
185            position: relative;
186            display: inline-block;
187            width: 40px;
188            height: 20px;
189        }
190
191        .switch input {
192            opacity: 0;
193            width: 0;
194            height: 0;
195        }
196
197        .slider {
198            position: absolute;
199            cursor: pointer;
200            top: 0;
201            left: 0;
202            right: 0;
203            bottom: 0;
204            background-color: #ccc;
205            transition: .4s;
206            border-radius: 20px;
207        }
208
209        .slider:before {
210            position: absolute;
211            content: "";
212            height: 16px;
213            width: 16px;
214            left: 2px;
215            bottom: 2px;
216            background-color: white;
217            transition: .4s;
218            border-radius: 50%;
219        }
220
221        input:checked + .slider {
222            background-color: #4caf50;
223        }
224
225        input:checked + .slider:before {
226            transform: translateX(20px);
227        }
228    `;
229    document.head.appendChild(style);
230
231    const menuContainer = document.createElement('div');
232    menuContainer.id = 'crosshair-settings';
233
234    const settingsButton = document.createElement('button');
235    settingsButton.id = 'crosshair-settings-button';
236    settingsButton.innerHTML = '⚙️';
237
238    const menu = document.createElement('div');
239    menu.id = 'crosshair-menu';
240
241const crosshairOptions = [
242    { label: "ceborix's crosshair", key: 'ceborix' },
243    { label: "myrrr's crosshair", key: 'myrrr' },
244    { label: 'Dot', key: 'dot' },
245    { label: 'Shotgun', key: 'shotgun' }
246];
247
248    function createOption(label, styleKey) {
249        const row = document.createElement('div');
250        row.className = 'crosshair-option';
251
252        const text = document.createElement('span');
253        text.textContent = label;
254
255        const toggleContainer = document.createElement('label');
256        toggleContainer.className = 'switch';
257
258        const toggle = document.createElement('input');
259        toggle.type = 'checkbox';
260        toggle.checked = state.currentStyle === styleKey;
261
262        const slider = document.createElement('span');
263        slider.className = 'slider';
264
265        toggle.onchange = () => {
266            if (toggle.checked) {
267                state.currentStyle = styleKey;
268                saveSettings(state.currentStyle);
269                applyCrosshair(state.currentStyle);
270
271                document.querySelectorAll('#crosshair-menu input[type=checkbox]').forEach(cb => {
272                    if (cb !== toggle) cb.checked = false;
273                });
274            } else {
275                state.currentStyle = null;
276                saveSettings(null);
277                clearCrosshair();
278            }
279        };
280
281        toggleContainer.appendChild(toggle);
282        toggleContainer.appendChild(slider);
283        row.appendChild(text);
284        row.appendChild(toggleContainer);
285        return row;
286    }
287
288    crosshairOptions.forEach(opt => menu.appendChild(createOption(opt.label, opt.key)));
289
290    menuContainer.onclick = (e) => {
291    if (e.target.closest('#crosshair-menu')) return;
292
293        menu.style.display = menu.style.display === 'flex' ? 'none' : 'flex';
294    };
295
296
297    menuContainer.appendChild(settingsButton);
298    menuContainer.appendChild(menu);
299    document.body.appendChild(menuContainer);
300
301    applyCrosshair(state.currentStyle);
302})();
303
304//I miss you m̈