mc5-api-client 1.0.22__py3-none-any.whl → 1.0.23__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15,7 +15,7 @@ messaging, and more.
15
15
 
16
16
  from typing import Optional, Dict, Any
17
17
 
18
- __version__ = "1.0.22"
18
+ __version__ = "1.0.23"
19
19
  __author__ = "Chizoba"
20
20
  __email__ = "chizoba2026@hotmail.com"
21
21
  __license__ = "MIT"
@@ -442,6 +442,15 @@ __all__ = [
442
442
  "customize_squad_theme",
443
443
  "set_squad_level",
444
444
  "customize_squad_complete",
445
+ "quick_set_name",
446
+ "quick_set_rating",
447
+ "quick_set_member_limit",
448
+ "quick_set_colors",
449
+ "quick_set_level",
450
+ "quick_set_currency",
451
+ "quick_setup_professional_squad",
452
+ "quick_setup_gaming_squad",
453
+ "quick_reset_to_defaults",
445
454
  "generate_device_id",
446
455
  "create_federation_session",
447
456
  "locate_service",
mc5_api_client/client.py CHANGED
@@ -2038,6 +2038,161 @@ class MC5Client(SquadBattleMixin, FederationMixin, AlertsMixin, AccountMixin, Tr
2038
2038
  # Apply updates
2039
2039
  return self.update_my_squad_info(**kwargs)
2040
2040
 
2041
+ # Quick Squad Customization Functions (NEW!)
2042
+
2043
+ def quick_set_name(self, name: str) -> Dict[str, Any]:
2044
+ """
2045
+ Quickly set squad name.
2046
+
2047
+ Args:
2048
+ name: New squad name
2049
+
2050
+ Returns:
2051
+ Dictionary with update result or error details
2052
+ """
2053
+ return self.update_my_squad_info(name=name)
2054
+
2055
+ def quick_set_rating(self, rating: int) -> Dict[str, Any]:
2056
+ """
2057
+ Quickly set squad rating.
2058
+
2059
+ Args:
2060
+ rating: New squad rating (0-99999)
2061
+
2062
+ Returns:
2063
+ Dictionary with update result or error details
2064
+ """
2065
+ return self.update_my_squad_info(rating=rating)
2066
+
2067
+ def quick_set_member_limit(self, limit: int) -> Dict[str, Any]:
2068
+ """
2069
+ Quickly set member limit.
2070
+
2071
+ Args:
2072
+ limit: New member limit (1-300)
2073
+
2074
+ Returns:
2075
+ Dictionary with update result or error details
2076
+ """
2077
+ return self.update_my_squad_info(member_limit=limit)
2078
+
2079
+ def quick_set_colors(self, primary_color: str, secondary_color: str = None) -> Dict[str, Any]:
2080
+ """
2081
+ Quickly set squad colors using color names.
2082
+
2083
+ Args:
2084
+ primary_color: Primary color name
2085
+ secondary_color: Secondary color name (optional)
2086
+
2087
+ Returns:
2088
+ Dictionary with update result or error details
2089
+ """
2090
+ updates = {
2091
+ "_logo_clr_prim": self.get_color_value(primary_color)
2092
+ }
2093
+
2094
+ if secondary_color:
2095
+ updates["_logo_clr_sec"] = self.get_color_value(secondary_color)
2096
+
2097
+ return self.update_my_squad_info(**updates)
2098
+
2099
+ def quick_set_level(self, level: int, name: str = None) -> Dict[str, Any]:
2100
+ """
2101
+ Quickly set squad to specific level.
2102
+
2103
+ Args:
2104
+ level: Desired level (1-10)
2105
+ name: Optional custom squad name
2106
+
2107
+ Returns:
2108
+ Dictionary with update result or error details
2109
+ """
2110
+ return self.set_squad_level(level, name)
2111
+
2112
+ def quick_set_currency(self, amount: int) -> Dict[str, Any]:
2113
+ """
2114
+ Quickly set squad currency.
2115
+
2116
+ Args:
2117
+ amount: Currency amount
2118
+
2119
+ Returns:
2120
+ Dictionary with update result or error details
2121
+ """
2122
+ return self.update_my_squad_info(currency=str(amount))
2123
+
2124
+ def quick_setup_professional_squad(self, name: str, level: int = 8) -> Dict[str, Any]:
2125
+ """
2126
+ Quick setup for professional squad with optimal settings.
2127
+
2128
+ Args:
2129
+ name: Squad name
2130
+ level: Squad level (1-10)
2131
+
2132
+ Returns:
2133
+ Dictionary with update result or error details
2134
+ """
2135
+ return self.customize_squad_complete(
2136
+ name=name,
2137
+ _xp=self.calculate_xp_for_level(level),
2138
+ rating=level * 1000,
2139
+ member_limit=50 + (level * 10),
2140
+ membership="owner_approved",
2141
+ _min_join_value=level * 200,
2142
+ description=f"Professional squad at Level {level}!",
2143
+ currency=str(level * 5000),
2144
+ active_clan_label="true"
2145
+ )
2146
+
2147
+ def quick_setup_gaming_squad(self, name: str, theme: str = "fire") -> Dict[str, Any]:
2148
+ """
2149
+ Quick setup for gaming squad with theme.
2150
+
2151
+ Args:
2152
+ name: Squad name
2153
+ theme: Color theme ('fire', 'ice', 'dark', 'nature')
2154
+
2155
+ Returns:
2156
+ Dictionary with update result or error details
2157
+ """
2158
+ # Apply theme first
2159
+ theme_result = self.customize_squad_theme(theme, name)
2160
+
2161
+ if theme_result and 'error' not in theme_result:
2162
+ # Add gaming-specific settings
2163
+ gaming_updates = {
2164
+ membership="owner_approved",
2165
+ _min_join_value=1000,
2166
+ currency="10000",
2167
+ active_clan_label="true"
2168
+ }
2169
+
2170
+ return self.update_my_squad_info(**gaming_updates)
2171
+
2172
+ return theme_result
2173
+
2174
+ def quick_reset_to_defaults(self) -> Dict[str, Any]:
2175
+ """
2176
+ Quick reset squad to default settings.
2177
+
2178
+ Returns:
2179
+ Dictionary with update result or error details
2180
+ """
2181
+ return self.customize_squad_complete(
2182
+ name="Default Squad",
2183
+ description="Default squad description",
2184
+ rating=1000,
2185
+ member_limit=30,
2186
+ membership="open",
2187
+ _logo="1",
2188
+ _logo_clr_prim=self.get_color_value("blue"),
2189
+ _logo_clr_sec=self.get_color_value("white"),
2190
+ _min_join_value=500,
2191
+ _xp=self.calculate_xp_for_level(1),
2192
+ currency="0",
2193
+ active_clan_label="false"
2194
+ )
2195
+
2041
2196
  # Events API
2042
2197
 
2043
2198
  def get_events(self, event_type: str = None, status: str = None) -> List[Dict[str, Any]]:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mc5_api_client
3
- Version: 1.0.22
3
+ Version: 1.0.23
4
4
  Summary: A comprehensive Python library for interacting with the Modern Combat 5 API
5
5
  Home-page: https://pypi.org/project/mc5-api-client/
6
6
  Author: Chizoba
@@ -409,38 +409,37 @@ from mc5_api_client import MC5Client
409
409
 
410
410
  client = MC5Client(username, password)
411
411
 
412
- # 🎯 Set squad to specific level (1-10)
413
- client.set_squad_level(8, "Level 8 Elite")
414
- # Automatically sets XP, rating, member limit, etc.
412
+ # 🚀 SUPER SIMPLE - One-line customizations!
413
+ client.quick_set_name("My Awesome Squad") # Change name
414
+ client.quick_set_level(5) # Set to Level 5
415
+ client.quick_set_colors("red", "white") # Red/White colors
416
+ client.quick_set_member_limit(50) # Set member limit
417
+ client.quick_set_currency(10000) # Set currency
415
418
 
416
- # 🎨 Apply color themes
417
- client.customize_squad_theme('fire', 'Fire Warriors') # Red/Orange theme
418
- client.customize_squad_theme('ice', 'Ice Legion') # Blue/Cyan theme
419
- client.customize_squad_theme('dark', 'Dark Knights') # Black/White theme
420
- client.customize_squad_theme('nature', 'Nature Guardians') # Green/Lime theme
419
+ # 🎯 QUICK SETUPS - Professional results in one line!
420
+ client.quick_setup_professional_squad("Elite Squad", level=8) # Professional squad
421
+ client.quick_setup_gaming_squad("Gaming Legends", "fire") # Gaming squad with theme
421
422
 
422
- # 🔧 Complete customization with validation
423
+ # 🎨 THEMES - Beautiful colors instantly
424
+ client.customize_squad_theme('fire') # Fire theme
425
+ client.customize_squad_theme('ice') # Ice theme
426
+ client.customize_squad_theme('dark') # Dark theme
427
+ client.customize_squad_theme('nature') # Nature theme
428
+
429
+ # ⭐ LEVEL SYSTEM - Automatic XP calculation
430
+ client.set_squad_level(10, "Max Level Squad") # Level 10 (max)
431
+ # Level 1: 1000 XP, Level 5: 5000 XP, Level 10: 10000 XP
432
+
433
+ # 🔧 COMPLETE CUSTOMIZATION - Full control with validation
423
434
  client.customize_squad_complete(
424
435
  name="452e55e84897+",
425
- description="Professional squad with active members!",
426
436
  rating=3573,
427
437
  score=5200,
428
438
  member_limit=300,
429
- membership="owner_approved",
430
- _logo="1",
431
- _logo_clr_prim=client.get_color_value("red"), # Red color
432
- _logo_clr_sec=client.get_color_value("white"), # White color
433
- _min_join_value=996699,
434
- _xp=client.calculate_xp_for_level(9), # Level 9 = 9000 XP
435
- _killsig_id="default_killsig_01",
436
- currency="10000",
437
- active_clan_label="true",
438
- active_clan_threshold="50"
439
+ _logo_clr_prim=client.get_color_value("red"),
440
+ _xp=client.calculate_xp_for_level(9),
441
+ currency="10000"
439
442
  )
440
-
441
- # 🎯 Helper functions
442
- xp = client.calculate_xp_for_level(5) # Returns 5000
443
- color = client.get_color_value('blue') # Returns '255'
444
443
  ```
445
444
 
446
445
  ### **📊 Squad Parameters You Can Customize:**
@@ -475,11 +474,36 @@ active_clan_label: "true"
475
474
  active_clan_threshold: "50"
476
475
  ```
477
476
 
478
- ### **🎮 Quick Customization Examples:**
477
+ ### **🚀 Quick Functions - EASIEST WAY TO CUSTOMIZE!**
478
+ ```python
479
+ # 📝 BASIC QUICK FUNCTIONS
480
+ client.quick_set_name("My Squad") # Change name
481
+ client.quick_set_rating(5000) # Set rating
482
+ client.quick_set_member_limit(50) # Set member limit
483
+ client.quick_set_currency(10000) # Set currency
484
+
485
+ # � COLOR QUICK FUNCTIONS
486
+ client.quick_set_colors("red") # Red theme
487
+ client.quick_set_colors("blue", "white") # Blue/White theme
488
+ client.quick_set_colors("black", "gold") # Black/Gold theme
489
+
490
+ # ⭐ LEVEL QUICK FUNCTIONS
491
+ client.quick_set_level(5) # Set to Level 5
492
+ client.quick_set_level(10, "Max Level") # Set to Level 10
493
+
494
+ # 🏆 PROFESSIONAL QUICK SETUPS
495
+ client.quick_setup_professional_squad("Elite Squad", level=8) # Professional setup
496
+ client.quick_setup_gaming_squad("Gaming Squad", "fire") # Gaming setup
497
+
498
+ # 🔄 RESET QUICK FUNCTION
499
+ client.quick_reset_to_defaults() # Reset to defaults
500
+ ```
501
+
502
+ ### **�🎮 Quick Customization Examples:**
479
503
  ```python
480
504
  # 🚀 One-line level upgrades
481
- client.set_squad_level(10) # Max level squad
482
- client.set_squad_level(5, "Level 5 Warriors") # Custom name
505
+ client.quick_set_level(10) # Max level squad
506
+ client.quick_set_level(5, "Level 5 Warriors") # Custom name
483
507
 
484
508
  # 🎨 One-line theme applications
485
509
  client.customize_squad_theme('fire') # Fire theme
@@ -585,6 +609,12 @@ python examples/automatic_squad_management.py
585
609
  # Complete squad customization:
586
610
  python examples/complete_squad_customization.py
587
611
 
612
+ # Quick squad customization:
613
+ python examples/squad_customization_quick.py
614
+
615
+ # Squad quick start (super simple):
616
+ python examples/squad_quick_start.py
617
+
588
618
  # Authentication examples:
589
619
  python examples/authentication_example.py
590
620
 
@@ -1,4 +1,4 @@
1
- mc5_api_client/__init__.py,sha256=izYE-Hb3sfF08lXzwZ8LwphUFJveyiQoLbU_k0yBGiI,13363
1
+ mc5_api_client/__init__.py,sha256=edDAYE4uY6borS9d1ROx3bUkNP3SUvh15maqdXT7aJY,13613
2
2
  mc5_api_client/account.py,sha256=EmydXCsCXaKqMw21oVttQfYuDl50pa2dwhcTeHtnxbQ,14396
3
3
  mc5_api_client/account_quick.py,sha256=t4ki4ujYENmcnd_004f0pO9SPxPyCllz4WHpBG9wNbo,10458
4
4
  mc5_api_client/admin_client.py,sha256=527aavolxVhY2M5ceFxVbbE5YTczU9Z86Fdt1UzdRZM,15220
@@ -6,7 +6,7 @@ mc5_api_client/alerts.py,sha256=zW-cEwSSShuHkGxTBQaS8Ynf1a0hh5RMQ0G3WC_ajI0,1322
6
6
  mc5_api_client/alerts_quick.py,sha256=D1j0RiHteYqoAgc4KYqTxYG1Hkud3b-xWRV_VOUEnY0,7946
7
7
  mc5_api_client/auth.py,sha256=z8vmyQIHUdAzk0pUyKCesT8gTv4jboLIFGBxAu1v_-8,13396
8
8
  mc5_api_client/cli.py,sha256=6xciRjWkUMOxgxlbDsoOiHRuirXPy7uc9WURXPKmgGc,17255
9
- mc5_api_client/client.py,sha256=IDP8c14f0u0k1rvUNqh7_3VmGBltv64GClLBkusNSJI,126182
9
+ mc5_api_client/client.py,sha256=Ual-DEU_PptvQbM6FkTzQbP0CUToqqXbepwUj__vS00,131067
10
10
  mc5_api_client/debug.py,sha256=524vNCE7jM_KP5JM81-3eI2cmFBBA-Hf7Uy0cIL75W0,8240
11
11
  mc5_api_client/easy_mc5.py,sha256=kfjOJMW-VRAZcXEF1yHiGsACgjb-ZjXGuw1U_gepSQY,24202
12
12
  mc5_api_client/exceptions.py,sha256=o7od4GrEIlgq6xSNUjZdh74xoDTytF3PLcMq5ewRiJw,2683
@@ -24,9 +24,9 @@ mc5_api_client/storage_admin.py,sha256=l-nwskbpa3KpeIoWcwVRicgBSvrTvQ5aE2QU_e366
24
24
  mc5_api_client/telemetry.py,sha256=k8qOimPg-AKsnMclIgeqYCJ_97j2pWyiN7Lg80D4sKo,13246
25
25
  mc5_api_client/transfer.py,sha256=-pln70360mo4cKBQIUzp_wt9ce1Cr4YA6aJDFPKEjzQ,14381
26
26
  mc5_api_client/transfer_quick.py,sha256=HhRbp4FVzFwuzHDcqOyYiVjeVEIfgezlWd8SN6sh874,11310
27
- mc5_api_client-1.0.22.dist-info/licenses/LICENSE,sha256=M0UBQ4B3pB9XcV54_jhVP681xyauF8GB6YK_rKmuXzk,1064
28
- mc5_api_client-1.0.22.dist-info/METADATA,sha256=Twytv04RCN7zec91J7x0SgLbAlUL9WpYkGBbJF0LJFY,91487
29
- mc5_api_client-1.0.22.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
30
- mc5_api_client-1.0.22.dist-info/entry_points.txt,sha256=2kruOpleFYK3Jl1MoQwGyqCd-Pj4kQWngXmIjnXx_gE,48
31
- mc5_api_client-1.0.22.dist-info/top_level.txt,sha256=eYJe4ue9j1ig_jFY5Z05mDqpizUEV7TYpk5lBXVd4kA,15
32
- mc5_api_client-1.0.22.dist-info/RECORD,,
27
+ mc5_api_client-1.0.23.dist-info/licenses/LICENSE,sha256=M0UBQ4B3pB9XcV54_jhVP681xyauF8GB6YK_rKmuXzk,1064
28
+ mc5_api_client-1.0.23.dist-info/METADATA,sha256=eGCRDEU5dYcTQQ573Kz1ZfpSYUNUJktOdXBkNfS_Z8o,92909
29
+ mc5_api_client-1.0.23.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
30
+ mc5_api_client-1.0.23.dist-info/entry_points.txt,sha256=2kruOpleFYK3Jl1MoQwGyqCd-Pj4kQWngXmIjnXx_gE,48
31
+ mc5_api_client-1.0.23.dist-info/top_level.txt,sha256=eYJe4ue9j1ig_jFY5Z05mDqpizUEV7TYpk5lBXVd4kA,15
32
+ mc5_api_client-1.0.23.dist-info/RECORD,,